User interface for camera effects

ABSTRACT

The present disclosure generally relates to user interfaces. In some examples, the electronic device transitions between user interfaces for capturing photos based on data received from a first camera and a second camera. In some examples, the electronic device provides enhanced zooming capabilities that result in visual pleasing results for a displayed digital viewfinder and for captured videos. In some examples, the electronic device provides user interfaces for transitioning a digital viewfinder between a first camera with an applied digital zoom to a second camera with no digital zoom. In some examples, the electronic device prepares to capture media at various magnification levels. In some examples, the electronic device enhanced capabilities for navigating through a plurality of values.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to the following co-pending provisionalapplications: U.S. Patent Application Ser. No. 62/349,059, entitled“USER INTERFACE FOR CAMERA EFFECTS”, filed Jun. 12, 2016; U.S. PatentApplication Ser. No. 62/384,140, entitled “USER INTERFACE FOR CAMERAEFFECTS”, filed Sep. 6, 2016; and U.S. Patent Application Ser. No.62/397,860, entitled “USER INTERFACE FOR CAMERA EFFECTS”, filed Sep. 21,2016. The content of these applications is hereby incorporated byreference in their entirety.

FIELD

The present disclosure relates generally to computer user interfaces ofelectronic devices, particularly devices having built-in cameras.

BACKGROUND

The use of electronic devices for recording videos and taking pictureshas increased significantly in recent years. Exemplary electronicdevices for recording videos and taking pictures include smart phonesand hand-held cameras. Such devices frequently include a viewfinder,which the user can use for previewing before taking a picture orrecording a video.

BRIEF SUMMARY

Some techniques for managing camera effects using electronic devices,however, are generally cumbersome and inefficient. For example,modifying the visual effects in viewfinders such that captured imagesand recorded videos exhibit the visual effects often requires extensiveuser input and is imprecise. For example, some existing techniques use acomplex and time-consuming user interface, which may include multiplekey presses or keystrokes. Existing techniques require more time thannecessary, wasting user time and device energy. This latterconsideration is particularly important in battery-operated devices.

Accordingly, the present technique provides electronic devices withfaster, more efficient methods and interfaces for managing cameraeffects. Such methods and interfaces optionally complement or replaceother methods for managing camera effects. Such methods and interfacesreduce the cognitive burden on a user and produce a more efficienthuman-machine interface. For battery-operated computing devices, suchmethods and interfaces conserve power and increase the time betweenbattery charges. In some examples, the techniques provide simulatedoptical effects in camera viewfinders and captured images withoutrequiring additional hardware components. In some examples, thetechniques provide the ability to quickly transition between userinterfaces for capturing photos based on data received from a firstcamera and a second camera with limited user input. In some examples,the techniques efficiently provide enhanced zooming capabilities thatresult in visual pleasing results for a displayed digital viewfinder andfor captured videos. In some examples, the techniques efficientlyprovide user interfaces for transitioning a digital viewfinder between afirst camera with an applied digital zoom to a second camera with nodigital zoom. Such techniques reduce the number of required user inputsand conserve battery power.

In accordance with some embodiments, a method is performed at anelectronic device with a first camera, a second camera, and a display.The method, comprises: displaying, on the display, a digital viewfinderincluding a preview based on data received from the first camera; andwhile displaying the digital viewfinder: in accordance with adetermination that a set of one or more conditions is met, wherein afirst condition of the set of one or more conditions is met when asubject is detected within a predetermined distance from the device,applying a simulated optical effect to the preview displayed in thedigital viewfinder, wherein the simulated optical effect is based ondata received from the first camera and the second camera; and inaccordance with a determination that the set of one or more conditionsis not met, displaying the preview in the digital viewfinder withoutapplying the simulated optical effect.

In accordance with some embodiments, a non-transitory computer-readablestorage medium is described. The non-transitory computer-readablestorage medium stores one or more programs configured to be executed byone or more processors of an electronic device with a first camera, asecond camera, and a display, the one or more programs includinginstructions for: displaying, on the display, a digital viewfinderincluding a preview based on data received from the first camera; andwhile displaying the digital viewfinder: in accordance with adetermination that a set of one or more conditions is met, wherein afirst condition of the set of one or more conditions is met when asubject is detected within a predetermined distance from the device,applying a simulated optical effect to the preview displayed in thedigital viewfinder, wherein the simulated optical effect is based ondata received from the first camera and the second camera; and inaccordance with a determination that the set of one or more conditionsis not met, displaying the preview in the digital viewfinder withoutapplying the simulated optical effect.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: a first camera; a second camera; adisplay; one or more processors; and a memory storing one or moreprograms configured to be executed by the one or more processors, theone or more programs including instructions for: displaying, on thedisplay, a digital viewfinder including a preview based on data receivedfrom the first camera; and while displaying the digital viewfinder: inaccordance with a determination that a set of one or more conditions ismet, wherein a first condition of the set of one or more conditions ismet when a subject is detected within a predetermined distance from thedevice, applying a simulated optical effect to the preview displayed inthe digital viewfinder, wherein the simulated optical effect is based ondata received from the first camera and the second camera; and inaccordance with a determination that the set of one or more conditionsis not met, displaying the preview in the digital viewfinder withoutapplying the simulated optical effect.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: a first camera; a second camera; and adisplay; means for displaying, on the display, a digital viewfinderincluding a preview based on data received from the first camera; andwhile displaying the digital viewfinder: in accordance with adetermination that a set of one or more conditions is met, wherein afirst condition of the set of one or more conditions is met when asubject is detected within a predetermined distance from the device,means for applying a simulated optical effect to the preview displayedin the digital viewfinder, wherein the simulated optical effect is basedon data received from the first camera and the second camera; and inaccordance with a determination that the set of one or more conditionsis not met, means for displaying the preview in the digital viewfinderwithout applying the simulated optical effect.

In accordance with some embodiments, a transitory computer-readablestorage medium is described. The transitory computer-readable storagemedium stores one or more programs configured to be executed by one ormore processors of an electronic device with a first camera, a secondcamera, and a display, the one or more programs including instructionsfor: displaying, on the display, a digital viewfinder including apreview based on data received from the first camera; and whiledisplaying the digital viewfinder: in accordance with a determinationthat a set of one or more conditions is met, wherein a first conditionof the set of one or more conditions is met when a subject is detectedwithin a predetermined distance from the device, applying a simulatedoptical effect to the preview displayed in the digital viewfinder,wherein the simulated optical effect is based on data received from thefirst camera and the second camera; and in accordance with adetermination that the set of one or more conditions is not met,displaying the preview in the digital viewfinder without applying thesimulated optical effect.

In accordance with some embodiments, a method is performed at anelectronic device with a first camera, a second camera, and a display.The method, comprises: concurrently displaying, on the display: a userinterface for capturing photos based on data received from the firstcamera that includes displaying a digital viewfinder with a firstmagnification; and an affordance for modifying the magnification ofphotos captured by the device using one or more of the first and secondcameras; detecting activation of the affordance; in response todetecting activation of the affordance: ceasing to display, on thedisplay, the user interface for capturing photos based on data receivedfrom the first camera; and displaying, on the display, a user interfacefor capturing photos based on data received from the second camera thatincludes displaying a digital viewfinder with a second magnificationthat is greater than the first magnification.

In accordance with some embodiments, a non-transitory computer-readablestorage medium is described. The non-transitory computer-readablestorage medium stores one or more programs configured to be executed byone or more processors of an electronic device with a first camera, asecond camera, and a display, the one or more programs includinginstructions for: concurrently displaying, on the display: a userinterface for capturing photos based on data received from the firstcamera that includes displaying a digital viewfinder with a firstmagnification; and an affordance for modifying the magnification ofphotos captured by the device using one or more of the first and secondcameras; detecting activation of the affordance; in response todetecting activation of the affordance: ceasing to display, on thedisplay, the user interface for capturing photos based on data receivedfrom the first camera; and displaying, on the display, a user interfacefor capturing photos based on data received from the second camera thatincludes displaying a digital viewfinder with a second magnificationthat is greater than the first magnification.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: a first camera; a second camera; adisplay; one or more processors; and a memory storing one or moreprograms configured to be executed by the one or more processors, theone or more programs including instructions for: concurrentlydisplaying, on the display: a user interface for capturing photos basedon data received from the first camera that includes displaying adigital viewfinder with a first magnification; and an affordance formodifying the magnification of photos captured by the device using oneor more of the first and second cameras; detecting activation of theaffordance; in response to detecting activation of the affordance:ceasing to display, on the display, the user interface for capturingphotos based on data received from the first camera; and displaying, onthe display, a user interface for capturing photos based on datareceived from the second camera that includes displaying a digitalviewfinder with a second magnification that is greater than the firstmagnification.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: a first camera; a second camera; and adisplay; means for concurrently displaying, on the display: a userinterface for capturing photos based on data received from the firstcamera that includes displaying a digital viewfinder with a firstmagnification; and an affordance for modifying the magnification ofphotos captured by the device using one or more of the first and secondcameras; means for detecting activation of the affordance; in responseto detecting activation of the affordance: means for ceasing to display,on the display, the user interface for capturing photos based on datareceived from the first camera; and means for displaying, on thedisplay, a user interface for capturing photos based on data receivedfrom the second camera that includes displaying a digital viewfinderwith a second magnification that is greater than the firstmagnification.

In accordance with some embodiments, a transitory computer-readablestorage medium is described. The transitory computer-readable storagemedium stores one or more programs configured to be executed by one ormore processors of an electronic device with a first camera, a secondcamera, and a display, the one or more programs including instructionsfor: concurrently displaying, on the display: a user interface forcapturing photos based on data received from the first camera thatincludes displaying a digital viewfinder with a first magnification; andan affordance for modifying the magnification of photos captured by thedevice using one or more of the first and second cameras; detectingactivation of the affordance; in response to detecting activation of theaffordance: ceasing to display, on the display, the user interface forcapturing photos based on data received from the first camera; anddisplaying, on the display, a user interface for capturing photos basedon data received from the second camera that includes displaying adigital viewfinder with a second magnification that is greater than thefirst magnification.

In accordance with some embodiments, a method is performed at anelectronic device with a one or more cameras and a display. The method,comprises: displaying, on the display: a digital viewfinder based ondata received from the one or more cameras; while displaying the digitalviewfinder, detecting a gesture that progresses at a gesture rate, thegesture corresponding to an instruction to zoom the digital viewfinderfrom a first magnification level to a third magnification level; inresponse to detecting the gesture, zooming the digital viewfinder fromthe first magnification level to a second magnification level and fromthe second magnification level to a third magnification level,including: during a first portion of the gesture, zooming the digitalviewfinder at a first rate that is slower than the gesture rate at whichthe gesture is progressing; and during a second portion of the gesturethat occurs after the first portion of the gesture, zooming the digitalviewfinder at a second rate that is faster than the gesture rate atwhich the gesture is progressing.

In accordance with some embodiments, a non-transitory computer-readablestorage medium is described. The non-transitory computer-readablestorage medium stores one or more programs configured to be executed byone or more processors of an electronic device with one or more camerasand a display, the one or more programs including instructions for:displaying, on the display: a digital viewfinder based on data receivedfrom the one or more cameras; while displaying the digital viewfinder,detecting a gesture that progresses at a gesture rate, the gesturecorresponding to an instruction to zoom the digital viewfinder from afirst magnification level to a third magnification level; in response todetecting the gesture, zooming the digital viewfinder from the firstmagnification level to a second magnification level and from the secondmagnification level to a third magnification level, including: during afirst portion of the gesture, zooming the digital viewfinder at a firstrate that is slower than the gesture rate at which the gesture isprogressing; and during a second portion of the gesture that occursafter the first portion of the gesture, zooming the digital viewfinderat a second rate that is faster than the gesture rate at which thegesture is progressing.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: one or more cameras; a display; one ormore processors; and a memory storing one or more programs configured tobe executed by the one or more processors, the one or more programsincluding instructions for: displaying, on the display: a digitalviewfinder based on data received from the one or more cameras; whiledisplaying the digital viewfinder, detecting a gesture that progressesat a gesture rate, the gesture corresponding to an instruction to zoomthe digital viewfinder from a first magnification level to a thirdmagnification level; in response to detecting the gesture, zooming thedigital viewfinder from the first magnification level to a secondmagnification level and from the second magnification level to a thirdmagnification level, including: during a first portion of the gesture,zooming the digital viewfinder at a first rate that is slower than thegesture rate at which the gesture is progressing; and during a secondportion of the gesture that occurs after the first portion of thegesture, zooming the digital viewfinder at a second rate that is fasterthan the gesture rate at which the gesture is progressing.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: one or more cameras; and a display;means for displaying, on the display: a digital viewfinder based on datareceived from the one or more cameras; while displaying the digitalviewfinder, detecting a gesture that progresses at a gesture rate, thegesture corresponding to an instruction to zoom the digital viewfinderfrom a first magnification level to a third magnification level; inresponse to detecting the gesture, zooming the digital viewfinder fromthe first magnification level to a second magnification level and fromthe second magnification level to a third magnification level,including: during a first portion of the gesture, zooming the digitalviewfinder at a first rate that is slower than the gesture rate at whichthe gesture is progressing; and during a second portion of the gesturethat occurs after the first portion of the gesture, zooming the digitalviewfinder at a second rate that is faster than the gesture rate atwhich the gesture is progressing.

In accordance with some embodiments, a transitory computer-readablestorage medium is described. The transitory computer-readable storagemedium stores one or more programs configured to be executed by one ormore processors of an electronic device with one or more cameras and adisplay, the one or more programs including instructions for:displaying, on the display: a digital viewfinder based on data receivedfrom the one or more cameras; while displaying the digital viewfinder,detecting a gesture that progresses at a gesture rate, the gesturecorresponding to an instruction to zoom the digital viewfinder from afirst magnification level to a third magnification level; in response todetecting the gesture, zooming the digital viewfinder from the firstmagnification level to a second magnification level and from the secondmagnification level to a third magnification level, including: during afirst portion of the gesture, zooming the digital viewfinder at a firstrate that is slower than the gesture rate at which the gesture isprogressing; and during a second portion of the gesture that occursafter the first portion of the gesture, zooming the digital viewfinderat a second rate that is faster than the gesture rate at which thegesture is progressing.

In accordance with some embodiments, a method is performed at anelectronic device with a display. The method, comprises: displaying, onthe display: displaying, on the display, a digital viewfinder; detectinga gesture corresponding to an instruction to zoom the digital viewfinderfrom a first magnification level to a second magnification leveldifferent from the first magnification level; determining whether a setof one or more conditions has been met, wherein a first condition of theset of one or more conditions is met when the difference between thesecond magnification level and a third magnification level is less thana predetermined threshold; and in accordance with a determination thatthe set of one or more conditions has been met, zooming the digitalviewfinder from the first magnification level to the third magnificationlevel.

In accordance with some embodiments, a non-transitory computer-readablestorage medium is described. The non-transitory computer-readablestorage medium stores one or more programs configured to be executed byone or more processors of an electronic device with a display, the oneor more programs including instructions for: displaying, on the display,a digital viewfinder; detecting a gesture corresponding to aninstruction to zoom the digital viewfinder from a first magnificationlevel to a second magnification level different from the firstmagnification level; determining whether a set of one or more conditionshas been met, wherein a first condition of the set of one or moreconditions is met when the difference between the second magnificationlevel and a third magnification level is less than a predeterminedthreshold; and in accordance with a determination that the set of one ormore conditions has been met, zooming the digital viewfinder from thefirst magnification level to the third magnification level.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: a display; one or more processors; andmemory storing one or more programs configured to be executed by the oneor more processors, the one or more programs including instructions for:displaying, on the display, a digital viewfinder; detecting a gesturecorresponding to an instruction to zoom the digital viewfinder from afirst magnification level to a second magnification level different fromthe first magnification level; determining whether a set of one or moreconditions has been met, wherein a first condition of the set of one ormore conditions is met when the difference between the secondmagnification level and a third magnification level is less than apredetermined threshold; and in accordance with a determination that theset of one or more conditions has been met, zooming the digitalviewfinder from the first magnification level to the third magnificationlevel.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: a display; and means for displaying, onthe display, a digital viewfinder; means for detecting a gesturecorresponding to an instruction to zoom the digital viewfinder from afirst magnification level to a second magnification level different fromthe first magnification level; means for determining whether a set ofone or more conditions has been met, wherein a first condition of theset of one or more conditions is met when the difference between thesecond magnification level and a third magnification level is less thana predetermined threshold; and in accordance with a determination thatthe set of one or more conditions has been met, means for zooming thedigital viewfinder from the first magnification level to the thirdmagnification level.

In accordance with some embodiments, a transitory computer-readablestorage medium is described. The transitory computer-readable storagemedium stores one or more programs configured to be executed by one ormore processors of an electronic device with a display, the one or moreprograms including instructions for: displaying, on the display, adigital viewfinder; detecting a gesture corresponding to an instructionto zoom the digital viewfinder from a first magnification level to asecond magnification level different from the first magnification level;determining whether a set of one or more conditions has been met,wherein a first condition of the set of one or more conditions is metwhen the difference between the second magnification level and a thirdmagnification level is less than a predetermined threshold; and inaccordance with a determination that the set of one or more conditionshas been met, zooming the digital viewfinder from the firstmagnification level to the third magnification level.

In accordance with some embodiments, a method is performed at anelectronic device with one or more input devices and a display. Themethod, comprises: concurrently displaying, on the display: a digitalviewfinder for capturing media with the one or more cameras at a firstmagnification level; and a magnification adjustment affordance; whileconcurrently displaying the digital viewfinder and the magnificationadjustment affordance, detecting, via the one or more input devices, afirst gesture at a location corresponding to the magnificationadjustment affordance; in accordance with a determination that the firstgesture is of a first type preparing to capture media with the one ormore cameras at a second magnification level different from the firstmagnification level; and in accordance with a determination that thefirst gesture is of a second type different from the first type:preparing to capture media with the one or more cameras at adynamically-selected magnification level different from the firstmagnification level, wherein the dynamically-selected magnificationlevel is selected based on a magnitude of the first gesture.

In accordance with some embodiments, a non-transitory computer-readablestorage medium is described. The non-transitory computer-readablestorage medium stores one or more programs configured to be executed byone or more processors of an electronic device with one or more cameras,one or more input devices, and a display, the one or more programsincluding instructions for: concurrently displaying, on the display: adigital viewfinder for capturing media with the one or more cameras at afirst magnification level; and a magnification adjustment affordance;while concurrently displaying the digital viewfinder and themagnification adjustment affordance, detecting, via the one or moreinput devices, a first gesture at a location corresponding to themagnification adjustment affordance; in accordance with a determinationthat the first gesture is of a first type preparing to capture mediawith the one or more cameras at a second magnification level differentfrom the first magnification level; and in accordance with adetermination that the first gesture is of a second type different fromthe first type: preparing to capture media with the one or more camerasat a dynamically-selected magnification level different from the firstmagnification level, wherein the dynamically-selected magnificationlevel is selected based on a magnitude of the first gesture.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: one or more cameras; one or more inputdevices; a display; one or more processors; and; and memory storing oneor more programs configured to be executed by the one or moreprocessors, the one or more programs including instructions for:concurrently displaying, on the display: a digital viewfinder forcapturing media with the one or more cameras at a first magnificationlevel; and a magnification adjustment affordance; while concurrentlydisplaying the digital viewfinder and the magnification adjustmentaffordance, detecting, via the one or more input devices, a firstgesture at a location corresponding to the magnification adjustmentaffordance; in accordance with a determination that the first gesture isof a first type preparing to capture media with the one or more camerasat a second magnification level different from the first magnificationlevel; and in accordance with a determination that the first gesture isof a second type different from the first type: preparing to capturemedia with the one or more cameras at a dynamically-selectedmagnification level different from the first magnification level,wherein the dynamically-selected magnification level is selected basedon a magnitude of the first gesture.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: one or more cameras; one or more inputdevices; a display; and means for concurrently displaying, on thedisplay: a digital viewfinder for capturing media with the one or morecameras at a first magnification level; and a magnification adjustmentaffordance; means, while concurrently displaying the digital viewfinderand the magnification adjustment affordance, for detecting, via the oneor more input devices, a first gesture at a location corresponding tothe magnification adjustment affordance; means, in accordance with adetermination that the first gesture is of a first type, for preparingto capture media with the one or more cameras at a second magnificationlevel different from the first magnification level; and means, inaccordance with a determination that the first gesture is of a secondtype different from the first type, for: preparing to capture media withthe one or more cameras at a dynamically-selected magnification leveldifferent from the first magnification level, wherein thedynamically-selected magnification level is selected based on amagnitude of the first gesture.

In accordance with some embodiments, a transitory computer-readablestorage medium is described. The non-transitory computer-readablestorage medium stores one or more programs configured to be executed byone or more processors of an electronic device with one or more cameras,one or more input devices, and a display, the one or more programsincluding instructions for: concurrently displaying, on the display: adigital viewfinder for capturing media with the one or more cameras at afirst magnification level; and a magnification adjustment affordance;while concurrently displaying the digital viewfinder and themagnification adjustment affordance, detecting, via the one or moreinput devices, a first gesture at a location corresponding to themagnification adjustment affordance; in accordance with a determinationthat the first gesture is of a first type preparing to capture mediawith the one or more cameras at a second magnification level differentfrom the first magnification level; and in accordance with adetermination that the first gesture is of a second type different fromthe first type: preparing to capture media with the one or more camerasat a dynamically-selected magnification level different from the firstmagnification level, wherein the dynamically-selected magnificationlevel is selected based on a magnitude of the first gesture.

In accordance with some embodiments, a method is performed at anelectronic device with one or more cameras, one or more input devices,and a display. The method, comprises: displaying a digital viewfinderbased on data received from the one or more cameras, wherein the digitalviewfinder includes a representation of one or more objects within afield of view of the one or more cameras; while displaying the digitalviewfinder, detecting, via the one or more input devices, a firstgesture; in accordance with a determination that a first set of one ormore conditions is met, wherein a first condition of the first set ofone or more conditions is met when the first gesture is at a firstlocation, updating display of the digital viewfinder to focus on arepresentation of a respective object of the one or more objects in thefield of view of the one or more cameras that corresponds to a locationof the first gesture on the one or more input devices without preparingto capture media with the one or more cameras at a second magnificationlevel different from the first magnification level; and in accordancewith a determination that a second set of one or more conditions is met,wherein a first condition of the second set of one or more conditions ismet when the first gesture is at a second location different from thefirst location, preparing to capture media with the one or more camerasat the second magnification level different from the first magnificationlevel.

In accordance with some embodiments, a non-transitory computer-readablestorage medium is described. The non-transitory computer-readablestorage medium stores one or more programs configured to be executed byone or more processors of an electronic device with one or more cameras,one or more input devices, and a display, the one or more programsincluding instructions for: displaying a digital viewfinder based ondata received from the one or more cameras, wherein the digitalviewfinder includes a representation of one or more objects within afield of view of the one or more cameras; while displaying the digitalviewfinder, detecting, via the one or more input devices, a firstgesture; in accordance with a determination that a first set of one ormore conditions is met, wherein a first condition of the first set ofone or more conditions is met when the first gesture is at a firstlocation, updating display of the digital viewfinder to focus on arepresentation of a respective object of the one or more objects in thefield of view of the one or more cameras that corresponds to a locationof the first gesture on the one or more input devices without preparingto capture media with the one or more cameras at a second magnificationlevel different from the first magnification level; and in accordancewith a determination that a second set of one or more conditions is met,wherein a first condition of the second set of one or more conditions ismet when the first gesture is at a second location different from thefirst location, preparing to capture media with the one or more camerasat the second magnification level different from the first magnificationlevel.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: one or more cameras; one or more inputdevices; a display; one or more processors; and; and memory storing oneor more programs configured to be executed by the one or moreprocessors, the one or more programs including instructions for:displaying a digital viewfinder based on data received from the one ormore cameras, wherein the digital viewfinder includes a representationof one or more objects within a field of view of the one or morecameras; while displaying the digital viewfinder, detecting, via the oneor more input devices, a first gesture; in accordance with adetermination that a first set of one or more conditions is met, whereina first condition of the first set of one or more conditions is met whenthe first gesture is at a first location, updating display of thedigital viewfinder to focus on a representation of a respective objectof the one or more objects in the field of view of the one or morecameras that corresponds to a location of the first gesture on the oneor more input devices without preparing to capture media with the one ormore cameras at a second magnification level different from the firstmagnification level; and in accordance with a determination that asecond set of one or more conditions is met, wherein a first conditionof the second set of one or more conditions is met when the firstgesture is at a second location different from the first location,preparing to capture media with the one or more cameras at the secondmagnification level different from the first magnification level.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: one or more cameras; one or more inputdevices; a display; and means, while the device is prepared to capturemedia with the one or more cameras at a first magnification level, fordisplaying, on the display: a digital viewfinder based on data receivedfrom the one or more cameras, wherein the digital viewfinder includes arepresentation of one or more objects within a field of view of the oneor more cameras; means, while displaying the digital viewfinder, fordetecting, via the one or more input devices, a first gesture; means, inaccordance with a determination that a first set of one or moreconditions is met, wherein a first condition of the first set of one ormore conditions is met when the first gesture is at a first location,for updating display of the digital viewfinder to focus on arepresentation of a respective object of the one or more objects in thefield of view of the one or more cameras that corresponds to a locationof the first gesture on the one or more input devices without preparingto capture media with the one or more cameras at a second magnificationlevel different from the first magnification level; and means, inaccordance with a determination that a second set of one or moreconditions is met, wherein a first condition of the second set of one ormore conditions is met when the first gesture is at a second locationdifferent from the first location, for preparing to capture media withthe one or more cameras at the second magnification level different fromthe first magnification level.

In accordance with some embodiments, a transitory computer-readablestorage medium is described. The non-transitory computer-readablestorage medium stores one or more programs configured to be executed byone or more processors of an electronic device with one or more cameras,one or more input devices, and a display, the one or more programsincluding instructions for: displaying a digital viewfinder based ondata received from the one or more cameras, wherein the digitalviewfinder includes a representation of one or more objects within afield of view of the one or more cameras; while displaying the digitalviewfinder, detecting, via the one or more input devices, a firstgesture; in accordance with a determination that a first set of one ormore conditions is met, wherein a first condition of the first set ofone or more conditions is met when the first gesture is at a firstlocation, updating display of the digital viewfinder to focus on arepresentation of a respective object of the one or more objects in thefield of view of the one or more cameras that corresponds to a locationof the first gesture on the one or more input devices without preparingto capture media with the one or more cameras at a second magnificationlevel different from the first magnification level; and in accordancewith a determination that a second set of one or more conditions is met,wherein a first condition of the second set of one or more conditions ismet when the first gesture is at a second location different from thefirst location, preparing to capture media with the one or more camerasat the second magnification level different from the first magnificationlevel.

In accordance with some embodiments, a method is performed at anelectronic device with a display and one or more input devices. Themethod, comprises: displaying, on the display, an adjustable control forselecting a value of a plurality of values from a minimum value to amaximum value; while displaying the adjustable control, receiving aninput, at the one or more input devices, that includes movement detectedvia the one or more input devices, wherein the movement is constrainedby a first input boundary and a second input boundary and the input isat a location closer to the first input boundary than the second inputboundary; in response to receiving the input: in accordance with adetermination that a rate of movement of the input meets a firstmovement-rate criteria, wherein the first movement-rate criteria includea first requirement that the rate of movement of the input is above afirst movement-rate threshold in order for the first movement-ratecriteria to be met, and in accordance with the movement of the inputincluding movement toward the first input boundary, navigating throughthe plurality of values based on a magnitude of the movement and a firstacceleration factor; and in accordance with a determination that therate of movement of the input meets the first set of movement-ratecriteria and a determination that the movement of the input includesmovement toward the second input boundary, navigating through theplurality of values based on the magnitude of the movement and a secondacceleration factor that is different from the first accelerationfactor.

In accordance with some embodiments, a non-transitory computer-readablestorage medium is described. The non-transitory computer-readablestorage medium stores one or more programs configured to be executed byone or more processors of an electronic device with one or more inputdevices, and a display, the one or more programs including instructionsfor: displaying, on the display, an adjustable control for selecting avalue of a plurality of values from a minimum value to a maximum value;while displaying the adjustable control, receiving an input, at the oneor more input devices, that includes movement detected via the one ormore input devices, wherein the movement is constrained by a first inputboundary and a second input boundary and the input is at a locationcloser to the first input boundary than the second input boundary; inresponse to receiving the input: in accordance with a determination thata rate of movement of the input meets a first movement-rate criteria,wherein the first movement-rate criteria include a first requirementthat the rate of movement of the input is above a first movement-ratethreshold in order for the first movement-rate criteria to be met, andin accordance with the movement of the input including movement towardthe first input boundary, navigating through the plurality of valuesbased on a magnitude of the movement and a first acceleration factor;and in accordance with a determination that the rate of movement of theinput meets the first set of movement-rate criteria and a determinationthat the movement of the input includes movement toward the second inputboundary, navigating through the plurality of values based on themagnitude of the movement and a second acceleration factor that isdifferent from the first acceleration factor.

In accordance with some embodiments, an electronic device is described.The electronic device comprises: one or more input devices; a display;one or more processors; and; and memory storing one or more programsconfigured to be executed by the one or more processors, the one or moreprograms including instructions for: means for displaying, on thedisplay, an adjustable control for selecting a value of a plurality ofvalues from a minimum value to a maximum value; means, while displayingthe adjustable control, for receiving an input, at the one or more inputdevices, that includes movement detected via the one or more inputdevices, wherein the movement is constrained by a first input boundaryand a second input boundary and the input is at a location closer to thefirst input boundary than the second input boundary; means, responsiveto receiving the input, for: in accordance with a determination that arate of movement of the input meets a first movement-rate criteria,wherein the first movement-rate criteria include a first requirementthat the rate of movement of the input is above a first movement-ratethreshold in order for the first movement-rate criteria to be met, andin accordance with the movement of the input including movement towardthe first input boundary, navigating through the plurality of valuesbased on a magnitude of the movement and a first acceleration factor;and in accordance with a determination that the rate of movement of theinput meets the first set of movement-rate criteria and a determinationthat the movement of the input includes movement toward the second inputboundary, navigating through the plurality of values based on themagnitude of the movement and a second acceleration factor that isdifferent from the first acceleration factor.

In accordance with some embodiments, a transitory computer-readablestorage medium is described. The non-transitory computer-readablestorage medium stores one or more programs configured to be executed byone or more processors of an electronic device with one or more inputdevices, and a display, the one or more programs including instructionsfor: displaying, on the display, an adjustable control for selecting avalue of a plurality of values from a minimum value to a maximum value;while displaying the adjustable control, receiving an input, at the oneor more input devices, that includes movement detected via the one ormore input devices, wherein the movement is constrained by a first inputboundary and a second input boundary and the input is at a locationcloser to the first input boundary than the second input boundary; inresponse to receiving the input: in accordance with a determination thata rate of movement of the input meets a first movement-rate criteria,wherein the first movement-rate criteria include a first requirementthat the rate of movement of the input is above a first movement-ratethreshold in order for the first movement-rate criteria to be met, andin accordance with the movement of the input including movement towardthe first input boundary, navigating through the plurality of valuesbased on a magnitude of the movement and a first acceleration factor;and in accordance with a determination that the rate of movement of theinput meets the first set of movement-rate criteria and a determinationthat the movement of the input includes movement toward the second inputboundary, navigating through the plurality of values based on themagnitude of the movement and a second acceleration factor that isdifferent from the first acceleration factor.

Executable instructions for performing these functions are, optionally,included in a non-transitory computer-readable storage medium or othercomputer program product configured for execution by one or moreprocessors. Executable instructions for performing these functions are,optionally, included in a transitory computer-readable storage medium orother computer program product configured for execution by one or moreprocessors.

Thus, devices are provided with faster, more efficient methods andinterfaces for managing camera effects, thereby increasing theeffectiveness, efficiency, and user satisfaction with such devices. Suchmethods and interfaces may complement or replace other methods formanaging camera effects.

DESCRIPTION OF THE FIGURES

For a better understanding of the various described embodiments,reference should be made to the Description of Embodiments below, inconjunction with the following drawings in which like reference numeralsrefer to corresponding parts throughout the figures.

FIG. 1A is a block diagram illustrating a portable multifunction devicewith a touch-sensitive display in accordance with some embodiments.

FIG. 1B is a block diagram illustrating exemplary components for eventhandling in accordance with some embodiments.

FIG. 2 illustrates a portable multifunction device having a touch screenin accordance with some embodiments.

FIG. 3 is a block diagram of an exemplary multifunction device with adisplay and a touch-sensitive surface in accordance with someembodiments.

FIG. 4A illustrates an exemplary user interface for a menu ofapplications on a portable multifunction device in accordance with someembodiments.

FIG. 4B illustrates an exemplary user interface for a multifunctiondevice with a touch-sensitive surface that is separate from the displayin accordance with some embodiments.

FIG. 5A illustrates a personal electronic device in accordance with someembodiments.

FIG. 5B is a block diagram illustrating a personal electronic device inaccordance with some embodiments.

FIGS. 5C-5D illustrate exemplary components of a personal electronicdevice having a touch-sensitive display and intensity sensors inaccordance with some embodiments.

FIGS. 5E-5H illustrate exemplary components and user interfaces of apersonal electronic device in accordance with some embodiments.

FIGS. 6A-6Q illustrate exemplary devices and user interfaces formanaging camera effects, in accordance with some embodiments.

FIGS. 7A-7B is a flow diagram illustrating a method for managing cameraeffects, in accordance with some embodiments.

FIGS. 8A-8H illustrate exemplary devices and user interfaces formanaging camera effects, in accordance with some embodiments.

FIG. 9 is a flow diagram illustrating a method for managing cameraeffects, in accordance with some embodiments.

FIGS. 10A-10T illustrate exemplary devices and user interfaces formanaging camera effects, in accordance with some embodiments.

FIG. 11 is a flow diagram illustrating a method for managing cameraeffects, in accordance with some embodiments.

FIGS. 12A-12I illustrate exemplary devices and user interfaces formanaging camera effects, in accordance with some embodiments.

FIG. 13 is a flow diagram illustrating a method for managing cameraeffects, in accordance with some embodiments.

FIGS. 14-17 are functional block diagrams, in accordance with someembodiments.

FIGS. 18A-8AN illustrate exemplary devices and user interfaces formanaging camera user interfaces, in accordance with some embodiments.

FIGS. 19A-19B is a flow diagram illustrating a method for managingcamera user interfaces, in accordance with some embodiments.

FIGS. 20A-20R illustrate exemplary devices and user interfaces formanaging camera user interfaces, in accordance with some embodiments.

FIGS. 21A-21B is a flow diagram illustrating a method for managingcamera user interfaces, in accordance with some embodiments.

FIGS. 22A-22J illustrate exemplary devices and user interfaces fornavigating through a plurality of values, in accordance with someembodiments.

FIGS. 23A-23B is a flow diagram illustrating a method for navigatingthrough a plurality of values, in accordance with some embodiments.

FIGS. 24-26 are functional block diagrams, in accordance with someembodiments.

DESCRIPTION OF EMBODIMENTS

The following description sets forth exemplary methods, parameters, andthe like. It should be recognized, however, that such description is notintended as a limitation on the scope of the present disclosure but isinstead provided as a description of exemplary embodiments.

Efficient device packaging allows desirable, highly-portable electronicdevices to be designed and manufactured. But, some electronic devicecomponents complicate the design of smaller devices, particularlythinner ones. Camera sensors and related components constitute anexample: they involve physical components organized along optical trainsthat lend to thicker designs. Consider, for instance, the ability of acamera (e.g., CCD sensor and related lenses) to perform variable opticalzooming depends on the arrangement of moveable (e.g., motorized)lens(es) among an optical train. When incorporated into cellular phones,the usual orientation of camera components is at odds with theform-factor of the overall phone: the camera's optical train typicallyruns along the thickness of the device. The use of cameras of thinnerdesign—such as fixed focal length cameras—introduces other issues.Namely, fixed focal length cameras do not have variable, optical zoomcapabilities. While it is still possible to perform digital zooming,digital zooming impacts image quality. Another issue with traditionalcellular phone cameras is that the size of the entrance pupil on thecamera is relatively small as compared to traditional camera system,such as an SLR. As a result of the small entrance pupil of the cameralens, some of the artistic photographic effects that are achievableusing a traditional SLR camera, such as the bokeh effect, are simply notachievable using a traditional mobile phone camera.

The embodiments described herein include electronic devices that utilizemultiple cameras to provide improved camera capabilities. In someembodiments, multiple cameras of fixed focal length are used withvariable digital magnification to mimic optical zooming capabilities. Insome embodiments, multiple cameras of fixed focal length are used tomimic, or simulate, a bokeh effect. The described embodiments alsoinclude complementary user interfaces that enable these improved cameracapabilities.

Together, the described embodiments permit efficient packaging andproduction of thin and light devices, while improving the performance ofthe device's camera optical capabilities. The use of fixed focal lengthcameras is beneficial as they are thinner and smaller than theirvariable focal length counterparts. The use of multiple cameras providesthe user the ability to optically zoom as well as provides the user anability to capture more pleasing photos by simulating the bokeh effect.Intuitive user interfaces allow users to leverage the benefits ofmultiple on-board cameras without placing undue cognitive burdens on theuser, thereby producing a more efficient human-machine interface. Inbattery-operated embodiments, the described embodiments also conservepower and increase run-time between battery charges, as the use of fixedfocal length cameras to simulate optical zooming avoids batteryconsumption by motorized lenses used in conventional variable, opticalzooming cameras.

Below, FIGS. 1A-1B, 2, 3, 4A-4B, and 5A-5H provide a description ofexemplary devices for performing the techniques for managing cameraeffects. FIGS. 6A-6Q illustrate exemplary devices and user interfacesfor managing camera effects. FIGS. 7A-7B is a flow diagram illustratingmethods of managing camera effects in accordance with some embodiments.The devices and user interfaces in FIGS. 6A-6Q are used to illustratethe processes described below, including the processes in FIGS. 7A-7B.FIGS. 8A-8H illustrate exemplary user interfaces for managing cameraeffects. FIG. 9 is a flow diagram illustrating methods of managingcamera effects in accordance with some embodiments. The user interfacesin FIGS. 8A-8H are used to illustrate the processes described below,including the processes in FIG. 9. FIGS. 10A-10T illustrate exemplarydevices and user interfaces for managing camera effects. FIG. 11 is aflow diagram illustrating methods of managing camera effects inaccordance with some embodiments. The devices and user interfaces inFIGS. 10A-10T are used to illustrate the processes described below,including the processes in FIG. 11. FIGS. 12A-12I illustrate exemplarydevices and user interfaces for managing camera effects. FIG. 13 is aflow diagram illustrating methods of managing camera effects inaccordance with some embodiments. The user interfaces in FIGS. 12A-12Iare used to illustrate the processes described below, including theprocesses in FIG. 13. FIGS. 18A-18AN illustrate exemplary devices anduser interfaces for managing camera user interfaces. FIGS. 19A-19B is aflow diagram illustrating methods of managing camera user interfaces inaccordance with some embodiments. The devices and user interfaces inFIGS. 18A-18AN are used to illustrate the processes described below,including the processes in FIGS. 19A-19B. FIGS. 20A-20R illustrateexemplary devices and user interfaces for managing camera userinterfaces. FIGS. 21A-21B is a flow diagram illustrating methods ofmanaging camera user interfaces in accordance with some embodiments. Thedevices and user interfaces in FIGS. 20A-20R are used to illustrate theprocesses described below, including the processes in FIGS. 21A-21B.FIGS. 22A-22J illustrate exemplary devices and user interfaces fornavigating through a plurality of values. FIGS. 23A-23B is a flowdiagram illustrating methods of navigating through a plurality of valuesin accordance with some embodiments. The devices and user interfaces inFIGS. FIGS. 22A-22J are used to illustrate the processes describedbelow, including the processes in FIGS. 23A-23B.

Although the following description uses terms “first,” “second,” etc. todescribe various elements, these elements should not be limited by theterms. These terms are only used to distinguish one element fromanother. For example, a first touch could be termed a second touch, and,similarly, a second touch could be termed a first touch, withoutdeparting from the scope of the various described embodiments. The firsttouch and the second touch are both touches, but they are not the sametouch.

The terminology used in the description of the various describedembodiments herein is for the purpose of describing particularembodiments only and is not intended to be limiting. As used in thedescription of the various described embodiments and the appendedclaims, the singular forms “a,” “an,” and “the” are intended to includethe plural forms as well, unless the context clearly indicatesotherwise. It will also be understood that the term “and/or” as usedherein refers to and encompasses any and all possible combinations ofone or more of the associated listed items. It will be furtherunderstood that the terms “includes,” “including,” “comprises,” and/or“comprising,” when used in this specification, specify the presence ofstated features, integers, steps, operations, elements, and/orcomponents, but do not preclude the presence or addition of one or moreother features, integers, steps, operations, elements, components,and/or groups thereof.

The term “if” is, optionally, construed to mean “when” or “upon” or “inresponse to determining” or “in response to detecting,” depending on thecontext. Similarly, the phrase “if it is determined” or “if [a statedcondition or event] is detected” is, optionally, construed to mean “upondetermining” or “in response to determining” or “upon detecting [thestated condition or event]” or “in response to detecting [the statedcondition or event],” depending on the context.

Embodiments of electronic devices, user interfaces for such devices, andassociated processes for using such devices are described. In someembodiments, the device is a portable communications device, such as amobile telephone, that also contains other functions, such as PDA and/ormusic player functions. Exemplary embodiments of portable multifunctiondevices include, without limitation, the iPhone®, iPod Touch®, and iPad®devices from Apple Inc. of Cupertino, Calif. Other portable electronicdevices, such as laptops or tablet computers with touch-sensitivesurfaces (e.g., touch screen displays and/or touchpads), are,optionally, used. It should also be understood that, in someembodiments, the device is not a portable communications device, but isa desktop computer with a touch-sensitive surface (e.g., a touch screendisplay and/or a touchpad).

In the discussion that follows, an electronic device that includes adisplay and a touch-sensitive surface is described. It should beunderstood, however, that the electronic device optionally includes oneor more other physical user-interface devices, such as a physicalkeyboard, a mouse, and/or a joystick.

The device typically supports a variety of applications, such as one ormore of the following: a drawing application, a presentationapplication, a word processing application, a website creationapplication, a disk authoring application, a spreadsheet application, agaming application, a telephone application, a video conferencingapplication, an e-mail application, an instant messaging application, aworkout support application, a photo management application, a digitalcamera application, a digital video camera application, a web browsingapplication, a digital music player application, and/or a digital videoplayer application.

The various applications that are executed on the device optionally useat least one common physical user-interface device, such as thetouch-sensitive surface. One or more functions of the touch-sensitivesurface as well as corresponding information displayed on the deviceare, optionally, adjusted and/or varied from one application to the nextand/or within a respective application. In this way, a common physicalarchitecture (such as the touch-sensitive surface) of the deviceoptionally supports the variety of applications with user interfacesthat are intuitive and transparent to the user.

Attention is now directed toward embodiments of portable devices withtouch-sensitive displays. FIG. 1A is a block diagram illustratingportable multifunction device 100 with touch-sensitive display system112 in accordance with some embodiments. Touch-sensitive display 112 issometimes called a “touch screen” for convenience and is sometimes knownas or called a “touch-sensitive display system.” Device 100 includesmemory 102 (which optionally includes one or more computer-readablestorage mediums), memory controller 122, one or more processing units(CPUs) 120, peripherals interface 118, RF circuitry 108, audio circuitry110, speaker 111, microphone 113, input/output (I/O) subsystem 106,other input control devices 116, and external port 124. Device 100optionally includes one or more optical sensors 164. Device 100optionally includes one or more contact intensity sensors 165 fordetecting intensity of contacts on device 100 (e.g., a touch-sensitivesurface such as touch-sensitive display system 112 of device 100).Device 100 optionally includes one or more tactile output generators 167for generating tactile outputs on device 100 (e.g., generating tactileoutputs on a touch-sensitive surface such as touch-sensitive displaysystem 112 of device 100 or touchpad 355 of device 300). Thesecomponents optionally communicate over one or more communication busesor signal lines 103.

As used in the specification and claims, the term “intensity” of acontact on a touch-sensitive surface refers to the force or pressure(force per unit area) of a contact (e.g., a finger contact) on thetouch-sensitive surface, or to a substitute (proxy) for the force orpressure of a contact on the touch-sensitive surface. The intensity of acontact has a range of values that includes at least four distinctvalues and more typically includes hundreds of distinct values (e.g., atleast 256). Intensity of a contact is, optionally, determined (ormeasured) using various approaches and various sensors or combinationsof sensors. For example, one or more force sensors underneath oradjacent to the touch-sensitive surface are, optionally, used to measureforce at various points on the touch-sensitive surface. In someimplementations, force measurements from multiple force sensors arecombined (e.g., a weighted average) to determine an estimated force of acontact. Similarly, a pressure-sensitive tip of a stylus is, optionally,used to determine a pressure of the stylus on the touch-sensitivesurface. Alternatively, the size of the contact area detected on thetouch-sensitive surface and/or changes thereto, the capacitance of thetouch-sensitive surface proximate to the contact and/or changes thereto,and/or the resistance of the touch-sensitive surface proximate to thecontact and/or changes thereto are, optionally, used as a substitute forthe force or pressure of the contact on the touch-sensitive surface. Insome implementations, the substitute measurements for contact force orpressure are used directly to determine whether an intensity thresholdhas been exceeded (e.g., the intensity threshold is described in unitscorresponding to the substitute measurements). In some implementations,the substitute measurements for contact force or pressure are convertedto an estimated force or pressure, and the estimated force or pressureis used to determine whether an intensity threshold has been exceeded(e.g., the intensity threshold is a pressure threshold measured in unitsof pressure). Using the intensity of a contact as an attribute of a userinput allows for user access to additional device functionality that mayotherwise not be accessible by the user on a reduced-size device withlimited real estate for displaying affordances (e.g., on atouch-sensitive display) and/or receiving user input (e.g., via atouch-sensitive display, a touch-sensitive surface, or aphysical/mechanical control such as a knob or a button).

As used in the specification and claims, the term “tactile output”refers to physical displacement of a device relative to a previousposition of the device, physical displacement of a component (e.g., atouch-sensitive surface) of a device relative to another component(e.g., housing) of the device, or displacement of the component relativeto a center of mass of the device that will be detected by a user withthe user's sense of touch. For example, in situations where the deviceor the component of the device is in contact with a surface of a userthat is sensitive to touch (e.g., a finger, palm, or other part of auser's hand), the tactile output generated by the physical displacementwill be interpreted by the user as a tactile sensation corresponding toa perceived change in physical characteristics of the device or thecomponent of the device. For example, movement of a touch-sensitivesurface (e.g., a touch-sensitive display or trackpad) is, optionally,interpreted by the user as a “down click” or “up click” of a physicalactuator button. In some cases, a user will feel a tactile sensationsuch as an “down click” or “up click” even when there is no movement ofa physical actuator button associated with the touch-sensitive surfacethat is physically pressed (e.g., displaced) by the user's movements. Asanother example, movement of the touch-sensitive surface is, optionally,interpreted or sensed by the user as “roughness” of the touch-sensitivesurface, even when there is no change in smoothness of thetouch-sensitive surface. While such interpretations of touch by a userwill be subject to the individualized sensory perceptions of the user,there are many sensory perceptions of touch that are common to a largemajority of users. Thus, when a tactile output is described ascorresponding to a particular sensory perception of a user (e.g., an “upclick,” a “down click,” “roughness”), unless otherwise stated, thegenerated tactile output corresponds to physical displacement of thedevice or a component thereof that will generate the described sensoryperception for a typical (or average) user.

It should be appreciated that device 100 is only one example of aportable multifunction device, and that device 100 optionally has moreor fewer components than shown, optionally combines two or morecomponents, or optionally has a different configuration or arrangementof the components. The various components shown in FIG. 1A areimplemented in hardware, software, or a combination of both hardware andsoftware, including one or more signal processing and/orapplication-specific integrated circuits.

Memory 102 optionally includes high-speed random access memory andoptionally also includes non-volatile memory, such as one or moremagnetic disk storage devices, flash memory devices, or othernon-volatile solid-state memory devices. Memory controller 122optionally controls access to memory 102 by other components of device100.

Peripherals interface 118 can be used to couple input and outputperipherals of the device to CPU 120 and memory 102. The one or moreprocessors 120 run or execute various software programs and/or sets ofinstructions stored in memory 102 to perform various functions fordevice 100 and to process data. In some embodiments, peripheralsinterface 118, CPU 120, and memory controller 122 are, optionally,implemented on a single chip, such as chip 104. In some otherembodiments, they are, optionally, implemented on separate chips.

RF (radio frequency) circuitry 108 receives and sends RF signals, alsocalled electromagnetic signals. RF circuitry 108 converts electricalsignals to/from electromagnetic signals and communicates withcommunications networks and other communications devices via theelectromagnetic signals. RF circuitry 108 optionally includes well-knowncircuitry for performing these functions, including but not limited toan antenna system, an RF transceiver, one or more amplifiers, a tuner,one or more oscillators, a digital signal processor, a CODEC chipset, asubscriber identity module (SIM) card, memory, and so forth. RFcircuitry 108 optionally communicates with networks, such as theInternet, also referred to as the World Wide Web (WWW), an intranetand/or a wireless network, such as a cellular telephone network, awireless local area network (LAN) and/or a metropolitan area network(MAN), and other devices by wireless communication. The RF circuitry 108optionally includes well-known circuitry for detecting near fieldcommunication (NFC) fields, such as by a short-range communicationradio. The wireless communication optionally uses any of a plurality ofcommunications standards, protocols, and technologies, including but notlimited to Global System for Mobile Communications (GSM), Enhanced DataGSM Environment (EDGE), high-speed downlink packet access (HSDPA),high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO),HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), long term evolution (LTE), nearfield communication (NFC), wideband code division multiple access(W-CDMA), code division multiple access (CDMA), time division multipleaccess (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity(Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n,and/or IEEE 802.11ac), voice over Internet Protocol (VoIP), Wi-MAX, aprotocol for e-mail (e.g., Internet message access protocol (IMAP)and/or post office protocol (POP)), instant messaging (e.g., extensiblemessaging and presence protocol (XMPP), Session Initiation Protocol forInstant Messaging and Presence Leveraging Extensions (SIMPLE), InstantMessaging and Presence Service (IMPS)), and/or Short Message Service(SMS), or any other suitable communication protocol, includingcommunication protocols not yet developed as of the filing date of thisdocument.

Audio circuitry 110, speaker 111, and microphone 113 provide an audiointerface between a user and device 100. Audio circuitry 110 receivesaudio data from peripherals interface 118, converts the audio data to anelectrical signal, and transmits the electrical signal to speaker 111.Speaker 111 converts the electrical signal to human-audible sound waves.Audio circuitry 110 also receives electrical signals converted bymicrophone 113 from sound waves. Audio circuitry 110 converts theelectrical signal to audio data and transmits the audio data toperipherals interface 118 for processing. Audio data is, optionally,retrieved from and/or transmitted to memory 102 and/or RF circuitry 108by peripherals interface 118. In some embodiments, audio circuitry 110also includes a headset jack (e.g., 212, FIG. 2). The headset jackprovides an interface between audio circuitry 110 and removable audioinput/output peripherals, such as output-only headphones or a headsetwith both output (e.g., a headphone for one or both ears) and input(e.g., a microphone).

I/O subsystem 106 couples input/output peripherals on device 100, suchas touch screen 112 and other input control devices 116, to peripheralsinterface 118. I/O subsystem 106 optionally includes display controller156, optical sensor controller 158, intensity sensor controller 159,haptic feedback controller 161, and one or more input controllers 160for other input or control devices. The one or more input controllers160 receive/send electrical signals from/to other input control devices116. The other input control devices 116 optionally include physicalbuttons (e.g., push buttons, rocker buttons, etc.), dials, sliderswitches, joysticks, click wheels, and so forth. In some alternateembodiments, input controller(s) 160 are, optionally, coupled to any (ornone) of the following: a keyboard, an infrared port, a USB port, and apointer device such as a mouse. The one or more buttons (e.g., 208, FIG.2) optionally include an up/down button for volume control of speaker111 and/or microphone 113. The one or more buttons optionally include apush button (e.g., 206, FIG. 2).

A quick press of the push button optionally disengages a lock of touchscreen 112 or optionally begins a process that uses gestures on thetouch screen to unlock the device, as described in U.S. patentapplication Ser. No. 11/322,549, “Unlocking a Device by PerformingGestures on an Unlock Image,” filed Dec. 23, 2005, U.S. Pat. No.7,657,849, which is hereby incorporated by reference in its entirety. Alonger press of the push button (e.g., 206) optionally turns power todevice 100 on or off. The functionality of one or more of the buttonsare, optionally, user-customizable. Touch screen 112 is used toimplement virtual or soft buttons and one or more soft keyboards.

Touch-sensitive display 112 provides an input interface and an outputinterface between the device and a user. Display controller 156 receivesand/or sends electrical signals from/to touch screen 112. Touch screen112 displays visual output to the user. The visual output optionallyincludes graphics, text, icons, video, and any combination thereof(collectively termed “graphics”). In some embodiments, some or all ofthe visual output optionally corresponds to user-interface objects.

Touch screen 112 has a touch-sensitive surface, sensor, or set ofsensors that accepts input from the user based on haptic and/or tactilecontact. Touch screen 112 and display controller 156 (along with anyassociated modules and/or sets of instructions in memory 102) detectcontact (and any movement or breaking of the contact) on touch screen112 and convert the detected contact into interaction withuser-interface objects (e.g., one or more soft keys, icons, web pages,or images) that are displayed on touch screen 112. In an exemplaryembodiment, a point of contact between touch screen 112 and the usercorresponds to a finger of the user.

Touch screen 112 optionally uses LCD (liquid crystal display)technology, LPD (light emitting polymer display) technology, or LED(light emitting diode) technology, although other display technologiesare used in other embodiments. Touch screen 112 and display controller156 optionally detect contact and any movement or breaking thereof usingany of a plurality of touch sensing technologies now known or laterdeveloped, including but not limited to capacitive, resistive, infrared,and surface acoustic wave technologies, as well as other proximitysensor arrays or other elements for determining one or more points ofcontact with touch screen 112. In an exemplary embodiment, projectedmutual capacitance sensing technology is used, such as that found in theiPhone® and iPod Touch® from Apple Inc. of Cupertino, Calif.

A touch-sensitive display in some embodiments of touch screen 112 is,optionally, analogous to the multi-touch sensitive touchpads describedin the following U.S. Pat. No. 6,323,846 (Westerman et al.), U.S. Pat.No. 6,570,557 (Westerman et al.), and/or U.S. Pat. No. 6,677,932(Westerman), and/or U.S. Patent Publication 2002/0015024A1, each ofwhich is hereby incorporated by reference in its entirety. However,touch screen 112 displays visual output from device 100, whereastouch-sensitive touchpads do not provide visual output.

A touch-sensitive display in some embodiments of touch screen 112 isdescribed in the following applications: (1) U.S. patent applicationSer. No. 11/381,313, “Multipoint Touch Surface Controller,” filed May 2,2006; (2) U.S. patent application Ser. No. 10/840,862, “MultipointTouchscreen,” filed May 6, 2004; (3) U.S. patent application Ser. No.10/903,964, “Gestures For Touch Sensitive Input Devices,” filed Jul. 30,2004; (4) U.S. patent application Ser. No. 11/048,264, “Gestures ForTouch Sensitive Input Devices,” filed Jan. 31, 2005; (5) U.S. patentapplication Ser. No. 11/038,590, “Mode-Based Graphical User InterfacesFor Touch Sensitive Input Devices,” filed Jan. 18, 2005; (6) U.S. patentapplication Ser. No. 11/228,758, “Virtual Input Device Placement On ATouch Screen User Interface,” filed Sep. 16, 2005; (7) U.S. patentapplication Ser. No. 11/228,700, “Operation Of A Computer With A TouchScreen Interface,” filed Sep. 16, 2005; (8) U.S. patent application Ser.No. 11/228,737, “Activating Virtual Keys Of A Touch-Screen VirtualKeyboard,” filed Sep. 16, 2005; and (9) U.S. patent application Ser. No.11/367,749, “Multi-Functional Hand-Held Device,” filed Mar. 3, 2006. Allof these applications are incorporated by reference herein in theirentirety.

Touch screen 112 optionally has a video resolution in excess of 100 dpi.In some embodiments, the touch screen has a video resolution ofapproximately 160 dpi. The user optionally makes contact with touchscreen 112 using any suitable object or appendage, such as a stylus, afinger, and so forth. In some embodiments, the user interface isdesigned to work primarily with finger-based contacts and gestures,which can be less precise than stylus-based input due to the larger areaof contact of a finger on the touch screen. In some embodiments, thedevice translates the rough finger-based input into a precisepointer/cursor position or command for performing the actions desired bythe user.

In some embodiments, in addition to the touch screen, device 100optionally includes a touchpad (not shown) for activating ordeactivating particular functions. In some embodiments, the touchpad isa touch-sensitive area of the device that, unlike the touch screen, doesnot display visual output. The touchpad is, optionally, atouch-sensitive surface that is separate from touch screen 112 or anextension of the touch-sensitive surface formed by the touch screen.

Device 100 also includes power system 162 for powering the variouscomponents. Power system 162 optionally includes a power managementsystem, one or more power sources (e.g., battery, alternating current(AC)), a recharging system, a power failure detection circuit, a powerconverter or inverter, a power status indicator (e.g., a light-emittingdiode (LED)) and any other components associated with the generation,management and distribution of power in portable devices.

Device 100 optionally also includes one or more optical sensors 164.FIG. 1A shows an optical sensor coupled to optical sensor controller 158in I/O subsystem 106. Optical sensor 164 optionally includescharge-coupled device (CCD) or complementary metal-oxide semiconductor(CMOS) phototransistors. Optical sensor 164 receives light from theenvironment, projected through one or more lenses, and converts thelight to data representing an image. In conjunction with imaging module143 (also called a camera module), optical sensor 164 optionallycaptures still images or video. In some embodiments, an optical sensoris located on the back of device 100, opposite touch screen display 112on the front of the device so that the touch screen display is enabledfor use as a viewfinder for still and/or video image acquisition. Insome embodiments, an optical sensor is located on the front of thedevice so that the user's image is, optionally, obtained for videoconferencing while the user views the other video conferenceparticipants on the touch screen display. In some embodiments, theposition of optical sensor 164 can be changed by the user (e.g., byrotating the lens and the sensor in the device housing) so that a singleoptical sensor 164 is used along with the touch screen display for bothvideo conferencing and still and/or video image acquisition.

Device 100 optionally also includes one or more contact intensitysensors 165. FIG. 1A shows a contact intensity sensor coupled tointensity sensor controller 159 in I/O subsystem 106. Contact intensitysensor 165 optionally includes one or more piezoresistive strain gauges,capacitive force sensors, electric force sensors, piezoelectric forcesensors, optical force sensors, capacitive touch-sensitive surfaces, orother intensity sensors (e.g., sensors used to measure the force (orpressure) of a contact on a touch-sensitive surface). Contact intensitysensor 165 receives contact intensity information (e.g., pressureinformation or a proxy for pressure information) from the environment.In some embodiments, at least one contact intensity sensor is collocatedwith, or proximate to, a touch-sensitive surface (e.g., touch-sensitivedisplay system 112). In some embodiments, at least one contact intensitysensor is located on the back of device 100, opposite touch screendisplay 112, which is located on the front of device 100.

Device 100 optionally also includes one or more proximity sensors 166.FIG. 1A shows proximity sensor 166 coupled to peripherals interface 118.Alternately, proximity sensor 166 is, optionally, coupled to inputcontroller 160 in I/O subsystem 106. Proximity sensor 166 optionallyperforms as described in U.S. patent application Ser. No. 11/241,839,“Proximity Detector In Handheld Device”; Ser. No. 11/240,788, “ProximityDetector In Handheld Device”; Ser. No. 11/620,702, “Using Ambient LightSensor To Augment Proximity Sensor Output”; Ser. No. 11/586,862,“Automated Response To And Sensing Of User Activity In PortableDevices”; and Ser. No. 11/638,251, “Methods And Systems For AutomaticConfiguration Of Peripherals,” which are hereby incorporated byreference in their entirety. In some embodiments, the proximity sensorturns off and disables touch screen 112 when the multifunction device isplaced near the user's ear (e.g., when the user is making a phone call).

Device 100 optionally also includes one or more tactile outputgenerators 167. FIG. 1A shows a tactile output generator coupled tohaptic feedback controller 161 in I/O subsystem 106. Tactile outputgenerator 167 optionally includes one or more electroacoustic devicessuch as speakers or other audio components and/or electromechanicaldevices that convert energy into linear motion such as a motor,solenoid, electroactive polymer, piezoelectric actuator, electrostaticactuator, or other tactile output generating component (e.g., acomponent that converts electrical signals into tactile outputs on thedevice). Contact intensity sensor 165 receives tactile feedbackgeneration instructions from haptic feedback module 133 and generatestactile outputs on device 100 that are capable of being sensed by a userof device 100. In some embodiments, at least one tactile outputgenerator is collocated with, or proximate to, a touch-sensitive surface(e.g., touch-sensitive display system 112) and, optionally, generates atactile output by moving the touch-sensitive surface vertically (e.g.,in/out of a surface of device 100) or laterally (e.g., back and forth inthe same plane as a surface of device 100). In some embodiments, atleast one tactile output generator sensor is located on the back ofdevice 100, opposite touch screen display 112, which is located on thefront of device 100.

Device 100 optionally also includes one or more accelerometers 168. FIG.1A shows accelerometer 168 coupled to peripherals interface 118.Alternately, accelerometer 168 is, optionally, coupled to an inputcontroller 160 in I/O subsystem 106. Accelerometer 168 optionallyperforms as described in U.S. Patent Publication No. 20050190059,“Acceleration-based Theft Detection System for Portable Electronicdevices,” and U.S. Patent Publication No. 20060017692, “Methods AndApparatuses For Operating A Portable Device Based On An Accelerometer,”both of which are incorporated by reference herein in their entirety. Insome embodiments, information is displayed on the touch screen displayin a portrait view or a landscape view based on an analysis of datareceived from the one or more accelerometers. Device 100 optionallyincludes, in addition to accelerometer(s) 168, a magnetometer (notshown) and a GPS (or GLONASS or other global navigation system) receiver(not shown) for obtaining information concerning the location andorientation (e.g., portrait or landscape) of device 100.

In some embodiments, the software components stored in memory 102include operating system 126, communication module (or set ofinstructions) 128, contact/motion module (or set of instructions) 130,graphics module (or set of instructions) 132, text input module (or setof instructions) 134, Global Positioning System (GPS) module (or set ofinstructions) 135, and applications (or sets of instructions) 136.Furthermore, in some embodiments, memory 102 (FIG. 1A) or 370 (FIG. 3)stores device/global internal state 157, as shown in FIGS. 1A and 3.Device/global internal state 157 includes one or more of: activeapplication state, indicating which applications, if any, are currentlyactive; display state, indicating what applications, views or otherinformation occupy various regions of touch screen display 112; sensorstate, including information obtained from the device's various sensorsand input control devices 116; and location information concerning thedevice's location and/or attitude.

Operating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, iOS,WINDOWS, or an embedded operating system such as VxWorks) includesvarious software components and/or drivers for controlling and managinggeneral system tasks (e.g., memory management, storage device control,power management, etc.) and facilitates communication between varioushardware and software components.

Communication module 128 facilitates communication with other devicesover one or more external ports 124 and also includes various softwarecomponents for handling data received by RF circuitry 108 and/orexternal port 124. External port 124 (e.g., Universal Serial Bus (USB),FIREWIRE, etc.) is adapted for coupling directly to other devices orindirectly over a network (e.g., the Internet, wireless LAN, etc.). Insome embodiments, the external port is a multi-pin (e.g., 30-pin)connector that is the same as, or similar to and/or compatible with, the30-pin connector used on iPod® (trademark of Apple Inc.) devices.

Contact/motion module 130 optionally detects contact with touch screen112 (in conjunction with display controller 156) and othertouch-sensitive devices (e.g., a touchpad or physical click wheel).Contact/motion module 130 includes various software components forperforming various operations related to detection of contact, such asdetermining if contact has occurred (e.g., detecting a finger-downevent), determining an intensity of the contact (e.g., the force orpressure of the contact or a substitute for the force or pressure of thecontact), determining if there is movement of the contact and trackingthe movement across the touch-sensitive surface (e.g., detecting one ormore finger-dragging events), and determining if the contact has ceased(e.g., detecting a finger-up event or a break in contact).Contact/motion module 130 receives contact data from the touch-sensitivesurface. Determining movement of the point of contact, which isrepresented by a series of contact data, optionally includes determiningspeed (magnitude), velocity (magnitude and direction), and/or anacceleration (a change in magnitude and/or direction) of the point ofcontact. These operations are, optionally, applied to single contacts(e.g., one finger contacts) or to multiple simultaneous contacts (e.g.,“multitouch”/multiple finger contacts). In some embodiments,contact/motion module 130 and display controller 156 detect contact on atouchpad.

In some embodiments, contact/motion module 130 uses a set of one or moreintensity thresholds to determine whether an operation has beenperformed by a user (e.g., to determine whether a user has “clicked” onan icon). In some embodiments, at least a subset of the intensitythresholds are determined in accordance with software parameters (e.g.,the intensity thresholds are not determined by the activation thresholdsof particular physical actuators and can be adjusted without changingthe physical hardware of device 100). For example, a mouse “click”threshold of a trackpad or touch screen display can be set to any of alarge range of predefined threshold values without changing the trackpador touch screen display hardware. Additionally, in some implementations,a user of the device is provided with software settings for adjustingone or more of the set of intensity thresholds (e.g., by adjustingindividual intensity thresholds and/or by adjusting a plurality ofintensity thresholds at once with a system-level click “intensity”parameter).

Contact/motion module 130 optionally detects a gesture input by a user.Different gestures on the touch-sensitive surface have different contactpatterns (e.g., different motions, timings, and/or intensities ofdetected contacts). Thus, a gesture is, optionally, detected bydetecting a particular contact pattern. For example, detecting a fingertap gesture includes detecting a finger-down event followed by detectinga finger-up (liftoff) event at the same position (or substantially thesame position) as the finger-down event (e.g., at the position of anicon). As another example, detecting a finger swipe gesture on thetouch-sensitive surface includes detecting a finger-down event followedby detecting one or more finger-dragging events, and subsequentlyfollowed by detecting a finger-up (liftoff) event.

Graphics module 132 includes various known software components forrendering and displaying graphics on touch screen 112 or other display,including components for changing the visual impact (e.g., brightness,transparency, saturation, contrast, or other visual property) ofgraphics that are displayed. As used herein, the term “graphics”includes any object that can be displayed to a user, including, withoutlimitation, text, web pages, icons (such as user-interface objectsincluding soft keys), digital images, videos, animations, and the like.

In some embodiments, graphics module 132 stores data representinggraphics to be used. Each graphic is, optionally, assigned acorresponding code. Graphics module 132 receives, from applicationsetc., one or more codes specifying graphics to be displayed along with,if necessary, coordinate data and other graphic property data, and thengenerates screen image data to output to display controller 156.

Haptic feedback module 133 includes various software components forgenerating instructions used by tactile output generator(s) 167 toproduce tactile outputs at one or more locations on device 100 inresponse to user interactions with device 100.

Text input module 134, which is, optionally, a component of graphicsmodule 132, provides soft keyboards for entering text in variousapplications (e.g., contacts 137, e-mail 140, IM 141, browser 147, andany other application that needs text input).

GPS module 135 determines the location of the device and provides thisinformation for use in various applications (e.g., to telephone 138 foruse in location-based dialing; to camera 143 as picture/video metadata;and to applications that provide location-based services such as weatherwidgets, local yellow page widgets, and map/navigation widgets).

Applications 136 optionally include the following modules (or sets ofinstructions), or a subset or superset thereof:

-   -   Contacts module 137 (sometimes called an address book or contact        list);    -   Telephone module 138;    -   Video conference module 139;    -   E-mail client module 140;    -   Instant messaging (IM) module 141;    -   Workout support module 142;    -   Camera module 143 for still and/or video images;    -   Image management module 144;    -   Video player module;    -   Music player module;    -   Browser module 147;    -   Calendar module 148;    -   Widget modules 149, which optionally include one or more of:        weather widget 149-1, stocks widget 149-2, calculator widget        149-3, alarm clock widget 149-4, dictionary widget 149-5, and        other widgets obtained by the user, as well as user-created        widgets 149-6;    -   Widget creator module 150 for making user-created widgets 149-6;    -   Search module 151;    -   Video and music player module 152, which merges video player        module and music player module;    -   Notes module 153;    -   Map module 154; and/or    -   Online video module 155.

Examples of other applications 136 that are, optionally, stored inmemory 102 include other word processing applications, other imageediting applications, drawing applications, presentation applications,JAVA-enabled applications, encryption, digital rights management, voicerecognition, and voice replication.

In conjunction with touch screen 112, display controller 156,contact/motion module 130, graphics module 132, and text input module134, contacts module 137 are, optionally, used to manage an address bookor contact list (e.g., stored in application internal state 192 ofcontacts module 137 in memory 102 or memory 370), including: addingname(s) to the address book; deleting name(s) from the address book;associating telephone number(s), e-mail address(es), physicaladdress(es) or other information with a name; associating an image witha name; categorizing and sorting names; providing telephone numbers ore-mail addresses to initiate and/or facilitate communications bytelephone 138, video conference module 139, e-mail 140, or IM 141; andso forth.

In conjunction with RF circuitry 108, audio circuitry 110, speaker 111,microphone 113, touch screen 112, display controller 156, contact/motionmodule 130, graphics module 132, and text input module 134, telephonemodule 138 are optionally, used to enter a sequence of characterscorresponding to a telephone number, access one or more telephonenumbers in contacts module 137, modify a telephone number that has beenentered, dial a respective telephone number, conduct a conversation, anddisconnect or hang up when the conversation is completed. As notedabove, the wireless communication optionally uses any of a plurality ofcommunications standards, protocols, and technologies.

In conjunction with RF circuitry 108, audio circuitry 110, speaker 111,microphone 113, touch screen 112, display controller 156, optical sensor164, optical sensor controller 158, contact/motion module 130, graphicsmodule 132, text input module 134, contacts module 137, and telephonemodule 138, video conference module 139 includes executable instructionsto initiate, conduct, and terminate a video conference between a userand one or more other participants in accordance with user instructions.

In conjunction with RF circuitry 108, touch screen 112, displaycontroller 156, contact/motion module 130, graphics module 132, and textinput module 134, e-mail client module 140 includes executableinstructions to create, send, receive, and manage e-mail in response touser instructions. In conjunction with image management module 144,e-mail client module 140 makes it very easy to create and send e-mailswith still or video images taken with camera module 143.

In conjunction with RF circuitry 108, touch screen 112, displaycontroller 156, contact/motion module 130, graphics module 132, and textinput module 134, the instant messaging module 141 includes executableinstructions to enter a sequence of characters corresponding to aninstant message, to modify previously entered characters, to transmit arespective instant message (for example, using a Short Message Service(SMS) or Multimedia Message Service (MMS) protocol for telephony-basedinstant messages or using XMPP, SIMPLE, or IMPS for Internet-basedinstant messages), to receive instant messages, and to view receivedinstant messages. In some embodiments, transmitted and/or receivedinstant messages optionally include graphics, photos, audio files, videofiles and/or other attachments as are supported in an MMS and/or anEnhanced Messaging Service (EMS). As used herein, “instant messaging”refers to both telephony-based messages (e.g., messages sent using SMSor MMS) and Internet-based messages (e.g., messages sent using XMPP,SIMPLE, or IMPS).

In conjunction with RF circuitry 108, touch screen 112, displaycontroller 156, contact/motion module 130, graphics module 132, textinput module 134, GPS module 135, map module 154, and music playermodule, workout support module 142 includes executable instructions tocreate workouts (e.g., with time, distance, and/or calorie burninggoals); communicate with workout sensors (sports devices); receiveworkout sensor data; calibrate sensors used to monitor a workout; selectand play music for a workout; and display, store, and transmit workoutdata.

In conjunction with touch screen 112, display controller 156, opticalsensor(s) 164, optical sensor controller 158, contact/motion module 130,graphics module 132, and image management module 144, camera module 143includes executable instructions to capture still images or video(including a video stream) and store them into memory 102, modifycharacteristics of a still image or video, or delete a still image orvideo from memory 102.

In conjunction with touch screen 112, display controller 156,contact/motion module 130, graphics module 132, text input module 134,and camera module 143, image management module 144 includes executableinstructions to arrange, modify (e.g., edit), or otherwise manipulate,label, delete, present (e.g., in a digital slide show or album), andstore still and/or video images.

In conjunction with RF circuitry 108, touch screen 112, displaycontroller 156, contact/motion module 130, graphics module 132, and textinput module 134, browser module 147 includes executable instructions tobrowse the Internet in accordance with user instructions, includingsearching, linking to, receiving, and displaying web pages or portionsthereof, as well as attachments and other files linked to web pages.

In conjunction with RF circuitry 108, touch screen 112, displaycontroller 156, contact/motion module 130, graphics module 132, textinput module 134, e-mail client module 140, and browser module 147,calendar module 148 includes executable instructions to create, display,modify, and store calendars and data associated with calendars (e.g.,calendar entries, to-do lists, etc.) in accordance with userinstructions.

In conjunction with RF circuitry 108, touch screen 112, displaycontroller 156, contact/motion module 130, graphics module 132, textinput module 134, and browser module 147, widget modules 149 aremini-applications that are, optionally, downloaded and used by a user(e.g., weather widget 149-1, stocks widget 149-2, calculator widget149-3, alarm clock widget 149-4, and dictionary widget 149-5) or createdby the user (e.g., user-created widget 149-6). In some embodiments, awidget includes an HTML (Hypertext Markup Language) file, a CSS(Cascading Style Sheets) file, and a JavaScript file. In someembodiments, a widget includes an XML (Extensible Markup Language) fileand a JavaScript file (e.g., Yahoo! Widgets).

In conjunction with RF circuitry 108, touch screen 112, displaycontroller 156, contact/motion module 130, graphics module 132, textinput module 134, and browser module 147, the widget creator module 150are, optionally, used by a user to create widgets (e.g., turning auser-specified portion of a web page into a widget).

In conjunction with touch screen 112, display controller 156,contact/motion module 130, graphics module 132, and text input module134, search module 151 includes executable instructions to search fortext, music, sound, image, video, and/or other files in memory 102 thatmatch one or more search criteria (e.g., one or more user-specifiedsearch terms) in accordance with user instructions.

In conjunction with touch screen 112, display controller 156,contact/motion module 130, graphics module 132, audio circuitry 110,speaker 111, RF circuitry 108, and browser module 147, video and musicplayer module 152 includes executable instructions that allow the userto download and play back recorded music and other sound files stored inone or more file formats, such as MP3 or AAC files, and executableinstructions to display, present, or otherwise play back videos (e.g.,on touch screen 112 or on an external, connected display via externalport 124). In some embodiments, device 100 optionally includes thefunctionality of an MP3 player, such as an iPod (trademark of AppleInc.).

In conjunction with touch screen 112, display controller 156,contact/motion module 130, graphics module 132, and text input module134, notes module 153 includes executable instructions to create andmanage notes, to-do lists, and the like in accordance with userinstructions.

In conjunction with RF circuitry 108, touch screen 112, displaycontroller 156, contact/motion module 130, graphics module 132, textinput module 134, GPS module 135, and browser module 147, map module 154are, optionally, used to receive, display, modify, and store maps anddata associated with maps (e.g., driving directions, data on stores andother points of interest at or near a particular location, and otherlocation-based data) in accordance with user instructions.

In conjunction with touch screen 112, display controller 156,contact/motion module 130, graphics module 132, audio circuitry 110,speaker 111, RF circuitry 108, text input module 134, e-mail clientmodule 140, and browser module 147, online video module 155 includesinstructions that allow the user to access, browse, receive (e.g., bystreaming and/or download), play back (e.g., on the touch screen or onan external, connected display via external port 124), send an e-mailwith a link to a particular online video, and otherwise manage onlinevideos in one or more file formats, such as H.264. In some embodiments,instant messaging module 141, rather than e-mail client module 140, isused to send a link to a particular online video. Additional descriptionof the online video application can be found in U.S. Provisional PatentApplication No. 60/936,562, “Portable Multifunction Device, Method, andGraphical User Interface for Playing Online Videos,” filed Jun. 20,2007, and U.S. patent application Ser. No. 11/968,067, “PortableMultifunction Device, Method, and Graphical User Interface for PlayingOnline Videos,” filed Dec. 31, 2007, the contents of which are herebyincorporated by reference in their entirety.

Each of the above-identified modules and applications corresponds to aset of executable instructions for performing one or more functionsdescribed above and the methods described in this application (e.g., thecomputer-implemented methods and other information processing methodsdescribed herein). These modules (e.g., sets of instructions) need notbe implemented as separate software programs, procedures, or modules,and thus various subsets of these modules are, optionally, combined orotherwise rearranged in various embodiments. For example, video playermodule is, optionally, combined with music player module into a singlemodule (e.g., video and music player module 152, FIG. 1A). In someembodiments, memory 102 optionally stores a subset of the modules anddata structures identified above. Furthermore, memory 102 optionallystores additional modules and data structures not described above.

In some embodiments, device 100 is a device where operation of apredefined set of functions on the device is performed exclusivelythrough a touch screen and/or a touchpad. By using a touch screen and/ora touchpad as the primary input control device for operation of device100, the number of physical input control devices (such as push buttons,dials, and the like) on device 100 is, optionally, reduced.

The predefined set of functions that are performed exclusively through atouch screen and/or a touchpad optionally include navigation betweenuser interfaces. In some embodiments, the touchpad, when touched by theuser, navigates device 100 to a main, home, or root menu from any userinterface that is displayed on device 100. In such embodiments, a “menubutton” is implemented using a touchpad. In some other embodiments, themenu button is a physical push button or other physical input controldevice instead of a touchpad.

FIG. 1B is a block diagram illustrating exemplary components for eventhandling in accordance with some embodiments. In some embodiments,memory 102 (FIG. 1A) or 370 (FIG. 3) includes event sorter 170 (e.g., inoperating system 126) and a respective application 136-1 (e.g., any ofthe aforementioned applications 137-151, 155, 380-390).

Event sorter 170 receives event information and determines theapplication 136-1 and application view 191 of application 136-1 to whichto deliver the event information. Event sorter 170 includes eventmonitor 171 and event dispatcher module 174. In some embodiments,application 136-1 includes application internal state 192, whichindicates the current application view(s) displayed on touch-sensitivedisplay 112 when the application is active or executing. In someembodiments, device/global internal state 157 is used by event sorter170 to determine which application(s) is (are) currently active, andapplication internal state 192 is used by event sorter 170 to determineapplication views 191 to which to deliver event information.

In some embodiments, application internal state 192 includes additionalinformation, such as one or more of: resume information to be used whenapplication 136-1 resumes execution, user interface state informationthat indicates information being displayed or that is ready for displayby application 136-1, a state queue for enabling the user to go back toa prior state or view of application 136-1, and a redo/undo queue ofprevious actions taken by the user.

Event monitor 171 receives event information from peripherals interface118. Event information includes information about a sub-event (e.g., auser touch on touch-sensitive display 112, as part of a multi-touchgesture). Peripherals interface 118 transmits information it receivesfrom I/O subsystem 106 or a sensor, such as proximity sensor 166,accelerometer(s) 168, and/or microphone 113 (through audio circuitry110). Information that peripherals interface 118 receives from I/Osubsystem 106 includes information from touch-sensitive display 112 or atouch-sensitive surface.

In some embodiments, event monitor 171 sends requests to the peripheralsinterface 118 at predetermined intervals. In response, peripheralsinterface 118 transmits event information. In other embodiments,peripherals interface 118 transmits event information only when there isa significant event (e.g., receiving an input above a predeterminednoise threshold and/or for more than a predetermined duration).

In some embodiments, event sorter 170 also includes a hit viewdetermination module 172 and/or an active event recognizer determinationmodule 173.

Hit view determination module 172 provides software procedures fordetermining where a sub-event has taken place within one or more viewswhen touch-sensitive display 112 displays more than one view. Views aremade up of controls and other elements that a user can see on thedisplay.

Another aspect of the user interface associated with an application is aset of views, sometimes herein called application views or userinterface windows, in which information is displayed and touch-basedgestures occur. The application views (of a respective application) inwhich a touch is detected optionally correspond to programmatic levelswithin a programmatic or view hierarchy of the application. For example,the lowest level view in which a touch is detected is, optionally,called the hit view, and the set of events that are recognized as properinputs are, optionally, determined based, at least in part, on the hitview of the initial touch that begins a touch-based gesture.

Hit view determination module 172 receives information related tosub-events of a touch-based gesture. When an application has multipleviews organized in a hierarchy, hit view determination module 172identifies a hit view as the lowest view in the hierarchy which shouldhandle the sub-event. In most circumstances, the hit view is the lowestlevel view in which an initiating sub-event occurs (e.g., the firstsub-event in the sequence of sub-events that form an event or potentialevent). Once the hit view is identified by the hit view determinationmodule 172, the hit view typically receives all sub-events related tothe same touch or input source for which it was identified as the hitview.

Active event recognizer determination module 173 determines which viewor views within a view hierarchy should receive a particular sequence ofsub-events. In some embodiments, active event recognizer determinationmodule 173 determines that only the hit view should receive a particularsequence of sub-events. In other embodiments, active event recognizerdetermination module 173 determines that all views that include thephysical location of a sub-event are actively involved views, andtherefore determines that all actively involved views should receive aparticular sequence of sub-events. In other embodiments, even if touchsub-events were entirely confined to the area associated with oneparticular view, views higher in the hierarchy would still remain asactively involved views.

Event dispatcher module 174 dispatches the event information to an eventrecognizer (e.g., event recognizer 180). In embodiments including activeevent recognizer determination module 173, event dispatcher module 174delivers the event information to an event recognizer determined byactive event recognizer determination module 173. In some embodiments,event dispatcher module 174 stores in an event queue the eventinformation, which is retrieved by a respective event receiver 182.

In some embodiments, operating system 126 includes event sorter 170.Alternatively, application 136-1 includes event sorter 170. In yet otherembodiments, event sorter 170 is a stand-alone module, or a part ofanother module stored in memory 102, such as contact/motion module 130.

In some embodiments, application 136-1 includes a plurality of eventhandlers 190 and one or more application views 191, each of whichincludes instructions for handling touch events that occur within arespective view of the application's user interface. Each applicationview 191 of the application 136-1 includes one or more event recognizers180. Typically, a respective application view 191 includes a pluralityof event recognizers 180. In other embodiments, one or more of eventrecognizers 180 are part of a separate module, such as a user interfacekit (not shown) or a higher level object from which application 136-1inherits methods and other properties. In some embodiments, a respectiveevent handler 190 includes one or more of: data updater 176, objectupdater 177, GUI updater 178, and/or event data 179 received from eventsorter 170. Event handler 190 optionally utilizes or calls data updater176, object updater 177, or GUI updater 178 to update the applicationinternal state 192. Alternatively, one or more of the application views191 include one or more respective event handlers 190. Also, in someembodiments, one or more of data updater 176, object updater 177, andGUI updater 178 are included in a respective application view 191.

A respective event recognizer 180 receives event information (e.g.,event data 179) from event sorter 170 and identifies an event from theevent information. Event recognizer 180 includes event receiver 182 andevent comparator 184. In some embodiments, event recognizer 180 alsoincludes at least a subset of: metadata 183, and event deliveryinstructions 188 (which optionally include sub-event deliveryinstructions).

Event receiver 182 receives event information from event sorter 170. Theevent information includes information about a sub-event, for example, atouch or a touch movement. Depending on the sub-event, the eventinformation also includes additional information, such as location ofthe sub-event. When the sub-event concerns motion of a touch, the eventinformation optionally also includes speed and direction of thesub-event. In some embodiments, events include rotation of the devicefrom one orientation to another (e.g., from a portrait orientation to alandscape orientation, or vice versa), and the event informationincludes corresponding information about the current orientation (alsocalled device attitude) of the device.

Event comparator 184 compares the event information to predefined eventor sub-event definitions and, based on the comparison, determines anevent or sub-event, or determines or updates the state of an event orsub-event. In some embodiments, event comparator 184 includes eventdefinitions 186. Event definitions 186 contain definitions of events(e.g., predefined sequences of sub-events), for example, event 1(187-1), event 2 (187-2), and others. In some embodiments, sub-events inan event (187) include, for example, touch begin, touch end, touchmovement, touch cancellation, and multiple touching. In one example, thedefinition for event 1 (187-1) is a double tap on a displayed object.The double tap, for example, comprises a first touch (touch begin) onthe displayed object for a predetermined phase, a first liftoff (touchend) for a predetermined phase, a second touch (touch begin) on thedisplayed object for a predetermined phase, and a second liftoff (touchend) for a predetermined phase. In another example, the definition forevent 2 (187-2) is a dragging on a displayed object. The dragging, forexample, comprises a touch (or contact) on the displayed object for apredetermined phase, a movement of the touch across touch-sensitivedisplay 112, and liftoff of the touch (touch end). In some embodiments,the event also includes information for one or more associated eventhandlers 190.

In some embodiments, event definition 187 includes a definition of anevent for a respective user-interface object. In some embodiments, eventcomparator 184 performs a hit test to determine which user-interfaceobject is associated with a sub-event. For example, in an applicationview in which three user-interface objects are displayed ontouch-sensitive display 112, when a touch is detected on touch-sensitivedisplay 112, event comparator 184 performs a hit test to determine whichof the three user-interface objects is associated with the touch(sub-event). If each displayed object is associated with a respectiveevent handler 190, the event comparator uses the result of the hit testto determine which event handler 190 should be activated. For example,event comparator 184 selects an event handler associated with thesub-event and the object triggering the hit test.

In some embodiments, the definition for a respective event (187) alsoincludes delayed actions that delay delivery of the event informationuntil after it has been determined whether the sequence of sub-eventsdoes or does not correspond to the event recognizer's event type.

When a respective event recognizer 180 determines that the series ofsub-events do not match any of the events in event definitions 186, therespective event recognizer 180 enters an event impossible, eventfailed, or event ended state, after which it disregards subsequentsub-events of the touch-based gesture. In this situation, other eventrecognizers, if any, that remain active for the hit view continue totrack and process sub-events of an ongoing touch-based gesture.

In some embodiments, a respective event recognizer 180 includes metadata183 with configurable properties, flags, and/or lists that indicate howthe event delivery system should perform sub-event delivery to activelyinvolved event recognizers. In some embodiments, metadata 183 includesconfigurable properties, flags, and/or lists that indicate how eventrecognizers interact, or are enabled to interact, with one another. Insome embodiments, metadata 183 includes configurable properties, flags,and/or lists that indicate whether sub-events are delivered to varyinglevels in the view or programmatic hierarchy.

In some embodiments, a respective event recognizer 180 activates eventhandler 190 associated with an event when one or more particularsub-events of an event are recognized. In some embodiments, a respectiveevent recognizer 180 delivers event information associated with theevent to event handler 190. Activating an event handler 190 is distinctfrom sending (and deferred sending) sub-events to a respective hit view.In some embodiments, event recognizer 180 throws a flag associated withthe recognized event, and event handler 190 associated with the flagcatches the flag and performs a predefined process.

In some embodiments, event delivery instructions 188 include sub-eventdelivery instructions that deliver event information about a sub-eventwithout activating an event handler. Instead, the sub-event deliveryinstructions deliver event information to event handlers associated withthe series of sub-events or to actively involved views. Event handlersassociated with the series of sub-events or with actively involved viewsreceive the event information and perform a predetermined process.

In some embodiments, data updater 176 creates and updates data used inapplication 136-1. For example, data updater 176 updates the telephonenumber used in contacts module 137, or stores a video file used in videoplayer module. In some embodiments, object updater 177 creates andupdates objects used in application 136-1. For example, object updater177 creates a new user-interface object or updates the position of auser-interface object. GUI updater 178 updates the GUI. For example, GUIupdater 178 prepares display information and sends it to graphics module132 for display on a touch-sensitive display.

In some embodiments, event handler(s) 190 includes or has access to dataupdater 176, object updater 177, and GUI updater 178. In someembodiments, data updater 176, object updater 177, and GUI updater 178are included in a single module of a respective application 136-1 orapplication view 191. In other embodiments, they are included in two ormore software modules.

It shall be understood that the foregoing discussion regarding eventhandling of user touches on touch-sensitive displays also applies toother forms of user inputs to operate multifunction devices 100 withinput devices, not all of which are initiated on touch screens. Forexample, mouse movement and mouse button presses, optionally coordinatedwith single or multiple keyboard presses or holds; contact movementssuch as taps, drags, scrolls, etc. on touchpads; pen stylus inputs;movement of the device; oral instructions; detected eye movements;biometric inputs; and/or any combination thereof are optionally utilizedas inputs corresponding to sub-events which define an event to berecognized.

FIG. 2 illustrates a portable multifunction device 100 having a touchscreen 112 in accordance with some embodiments. The touch screenoptionally displays one or more graphics within user interface (UI) 200.In this embodiment, as well as others described below, a user is enabledto select one or more of the graphics by making a gesture on thegraphics, for example, with one or more fingers 202 (not drawn to scalein the figure) or one or more styluses 203 (not drawn to scale in thefigure). In some embodiments, selection of one or more graphics occurswhen the user breaks contact with the one or more graphics. In someembodiments, the gesture optionally includes one or more taps, one ormore swipes (from left to right, right to left, upward and/or downward),and/or a rolling of a finger (from right to left, left to right, upwardand/or downward) that has made contact with device 100. In someimplementations or circumstances, inadvertent contact with a graphicdoes not select the graphic. For example, a swipe gesture that sweepsover an application icon optionally does not select the correspondingapplication when the gesture corresponding to selection is a tap.

Device 100 optionally also include one or more physical buttons, such as“home” or menu button 204. As described previously, menu button 204 is,optionally, used to navigate to any application 136 in a set ofapplications that are, optionally, executed on device 100.Alternatively, in some embodiments, the menu button is implemented as asoft key in a GUI displayed on touch screen 112.

In some embodiments, device 100 includes touch screen 112, menu button204, push button 206 for powering the device on/off and locking thedevice, volume adjustment button(s) 208, subscriber identity module(SIM) card slot 210, headset jack 212, and docking/charging externalport 124. Push button 206 is, optionally, used to turn the power on/offon the device by depressing the button and holding the button in thedepressed state for a predefined time interval; to lock the device bydepressing the button and releasing the button before the predefinedtime interval has elapsed; and/or to unlock the device or initiate anunlock process. In an alternative embodiment, device 100 also acceptsverbal input for activation or deactivation of some functions throughmicrophone 113. Device 100 also, optionally, includes one or morecontact intensity sensors 165 for detecting intensity of contacts ontouch screen 112 and/or one or more tactile output generators 167 forgenerating tactile outputs for a user of device 100.

FIG. 3 is a block diagram of an exemplary multifunction device with adisplay and a touch-sensitive surface in accordance with someembodiments. Device 300 need not be portable. In some embodiments,device 300 is a laptop computer, a desktop computer, a tablet computer,a multimedia player device, a navigation device, an educational device(such as a child's learning toy), a gaming system, or a control device(e.g., a home or industrial controller). Device 300 typically includesone or more processing units (CPUs) 310, one or more network or othercommunications interfaces 360, memory 370, and one or more communicationbuses 320 for interconnecting these components. Communication buses 320optionally include circuitry (sometimes called a chipset) thatinterconnects and controls communications between system components.Device 300 includes input/output (I/O) interface 330 comprising display340, which is typically a touch screen display. I/O interface 330 alsooptionally includes a keyboard and/or mouse (or other pointing device)350 and touchpad 355, tactile output generator 357 for generatingtactile outputs on device 300 (e.g., similar to tactile outputgenerator(s) 167 described above with reference to FIG. 1A), sensors 359(e.g., optical, acceleration, proximity, touch-sensitive, and/or contactintensity sensors similar to contact intensity sensor(s) 165 describedabove with reference to FIG. 1A). Memory 370 includes high-speed randomaccess memory, such as DRAM, SRAM, DDR RAM, or other random access solidstate memory devices; and optionally includes non-volatile memory, suchas one or more magnetic disk storage devices, optical disk storagedevices, flash memory devices, or other non-volatile solid state storagedevices. Memory 370 optionally includes one or more storage devicesremotely located from CPU(s) 310. In some embodiments, memory 370 storesprograms, modules, and data structures analogous to the programs,modules, and data structures stored in memory 102 of portablemultifunction device 100 (FIG. 1A), or a subset thereof. Furthermore,memory 370 optionally stores additional programs, modules, and datastructures not present in memory 102 of portable multifunction device100. For example, memory 370 of device 300 optionally stores drawingmodule 380, presentation module 382, word processing module 384, websitecreation module 386, disk authoring module 388, and/or spreadsheetmodule 390, while memory 102 of portable multifunction device 100 (FIG.1A) optionally does not store these modules.

Each of the above-identified elements in FIG. 3 is, optionally, storedin one or more of the previously mentioned memory devices. Each of theabove-identified modules corresponds to a set of instructions forperforming a function described above. The above-identified modules orprograms (e.g., sets of instructions) need not be implemented asseparate software programs, procedures, or modules, and thus varioussubsets of these modules are, optionally, combined or otherwiserearranged in various embodiments. In some embodiments, memory 370optionally stores a subset of the modules and data structures identifiedabove. Furthermore, memory 370 optionally stores additional modules anddata structures not described above.

Attention is now directed towards embodiments of user interfaces thatare, optionally, implemented on, for example, portable multifunctiondevice 100.

FIG. 4A illustrates an exemplary user interface for a menu ofapplications on portable multifunction device 100 in accordance withsome embodiments. Similar user interfaces are, optionally, implementedon device 300. In some embodiments, user interface 400 includes thefollowing elements, or a subset or superset thereof:

-   -   Signal strength indicator(s) 402 for wireless communication(s),        such as cellular and Wi-Fi signals;    -   Time 404;    -   Bluetooth indicator 405;    -   Battery status indicator 406;    -   Tray 408 with icons for frequently used applications, such as:        -   Icon 416 for telephone module 138, labeled “Phone,” which            optionally includes an indicator 414 of the number of missed            calls or voicemail messages;        -   Icon 418 for e-mail client module 140, labeled “Mail,” which            optionally includes an indicator 410 of the number of unread            e-mails;        -   Icon 420 for browser module 147, labeled “Browser;” and        -   Icon 422 for video and music player module 152, also            referred to as iPod (trademark of Apple Inc.) module 152,            labeled “iPod;” and    -   Icons for other applications, such as:        -   Icon 424 for IM module 141, labeled “Messages;”        -   Icon 426 for calendar module 148, labeled “Calendar;”        -   Icon 428 for image management module 144, labeled “Photos;”        -   Icon 430 for camera module 143, labeled “Camera;”        -   Icon 432 for online video module 155, labeled “Online            Video;”        -   Icon 434 for stocks widget 149-2, labeled “Stocks;”        -   Icon 436 for map module 154, labeled “Maps;”        -   Icon 438 for weather widget 149-1, labeled “Weather;”        -   Icon 440 for alarm clock widget 149-4, labeled “Clock;”        -   Icon 442 for workout support module 142, labeled “Workout            Support;”        -   Icon 444 for notes module 153, labeled “Notes;” and        -   Icon 446 for a settings application or module, labeled            “Settings,” which provides access to settings for device 100            and its various applications 136.

It should be noted that the icon labels illustrated in FIG. 4A aremerely exemplary. For example, icon 422 for video and music playermodule 152 is labeled “Music” or “Music Player.” Other labels are,optionally, used for various application icons. In some embodiments, alabel for a respective application icon includes a name of anapplication corresponding to the respective application icon. In someembodiments, a label for a particular application icon is distinct froma name of an application corresponding to the particular applicationicon.

FIG. 4B illustrates an exemplary user interface on a device (e.g.,device 300, FIG. 3) with a touch-sensitive surface 451 (e.g., a tabletor touchpad 355, FIG. 3) that is separate from the display 450 (e.g.,touch screen display 112). Device 300 also, optionally, includes one ormore contact intensity sensors (e.g., one or more of sensors 359) fordetecting intensity of contacts on touch-sensitive surface 451 and/orone or more tactile output generators 357 for generating tactile outputsfor a user of device 300.

Although some of the examples that follow will be given with referenceto inputs on touch screen display 112 (where the touch-sensitive surfaceand the display are combined), in some embodiments, the device detectsinputs on a touch-sensitive surface that is separate from the display,as shown in FIG. 4B. In some embodiments, the touch-sensitive surface(e.g., 451 in FIG. 4B) has a primary axis (e.g., 452 in FIG. 4B) thatcorresponds to a primary axis (e.g., 453 in FIG. 4B) on the display(e.g., 450). In accordance with these embodiments, the device detectscontacts (e.g., 460 and 462 in FIG. 4B) with the touch-sensitive surface451 at locations that correspond to respective locations on the display(e.g., in FIG. 4B, 460 corresponds to 468 and 462 corresponds to 470).In this way, user inputs (e.g., contacts 460 and 462, and movementsthereof) detected by the device on the touch-sensitive surface (e.g.,451 in FIG. 4B) are used by the device to manipulate the user interfaceon the display (e.g., 450 in FIG. 4B) of the multifunction device whenthe touch-sensitive surface is separate from the display. It should beunderstood that similar methods are, optionally, used for other userinterfaces described herein.

Additionally, while the following examples are given primarily withreference to finger inputs (e.g., finger contacts, finger tap gestures,finger swipe gestures), it should be understood that, in someembodiments, one or more of the finger inputs are replaced with inputfrom another input device (e.g., a mouse-based input or stylus input).For example, a swipe gesture is, optionally, replaced with a mouse click(e.g., instead of a contact) followed by movement of the cursor alongthe path of the swipe (e.g., instead of movement of the contact). Asanother example, a tap gesture is, optionally, replaced with a mouseclick while the cursor is located over the location of the tap gesture(e.g., instead of detection of the contact followed by ceasing to detectthe contact). Similarly, when multiple user inputs are simultaneouslydetected, it should be understood that multiple computer mice are,optionally, used simultaneously, or a mouse and finger contacts are,optionally, used simultaneously.

FIG. 5A illustrates exemplary personal electronic device 500. Device 500includes body 502. In some embodiments, device 500 can include some orall of the features described with respect to devices 100 and 300 (e.g.,FIGS. 1A-4B). In some embodiments, device 500 has touch-sensitivedisplay screen 504, hereafter touch screen 504. Alternatively, or inaddition to touch screen 504, device 500 has a display and atouch-sensitive surface. As with devices 100 and 300, in someembodiments, touch screen 504 (or the touch-sensitive surface)optionally includes one or more intensity sensors for detectingintensity of contacts (e.g., touches) being applied. The one or moreintensity sensors of touch screen 504 (or the touch-sensitive surface)can provide output data that represents the intensity of touches. Theuser interface of device 500 can respond to touches based on theirintensity, meaning that touches of different intensities can invokedifferent user interface operations on device 500.

Exemplary techniques for detecting and processing touch intensity arefound, for example, in related applications: International PatentApplication Serial No. PCT/US2013/040061, titled “Device, Method, andGraphical User Interface for Displaying User Interface ObjectsCorresponding to an Application,” filed May 8, 2013, published as WIPOPublication No. WO/2013/169849, and International Patent ApplicationSerial No. PCT/US2013/069483, titled “Device, Method, and Graphical UserInterface for Transitioning Between Touch Input to Display OutputRelationships,” filed Nov. 11, 2013, published as WIPO Publication No.WO/2014/105276, each of which is hereby incorporated by reference intheir entirety.

In some embodiments, device 500 has one or more input mechanisms 506 and508. Input mechanisms 506 and 508, if included, can be physical.Examples of physical input mechanisms include push buttons and rotatablemechanisms. In some embodiments, device 500 has one or more attachmentmechanisms. Such attachment mechanisms, if included, can permitattachment of device 500 with, for example, hats, eyewear, earrings,necklaces, shirts, jackets, bracelets, watch straps, chains, trousers,belts, shoes, purses, backpacks, and so forth. These attachmentmechanisms permit device 500 to be worn by a user.

FIG. 5B depicts exemplary personal electronic device 500. In someembodiments, device 500 can include some or all of the componentsdescribed with respect to FIGS. 1A, 1B, and 3. Device 500 has bus 512that operatively couples I/O section 514 with one or more computerprocessors 516 and memory 518. I/O section 514 can be connected todisplay 504, which can have touch-sensitive component 522 and,optionally, intensity sensor 524 (e.g., contact intensity sensor). Inaddition, I/O section 514 can be connected with communication unit 530for receiving application and operating system data, using Wi-Fi,Bluetooth, near field communication (NFC), cellular, and/or otherwireless communication techniques. Device 500 can include inputmechanisms 506 and/or 508. Input mechanism 506 is, optionally, arotatable input device or a depressible and rotatable input device, forexample. Input mechanism 508 is, optionally, a button, in some examples.

Input mechanism 508 is, optionally, a microphone, in some examples.Personal electronic device 500 optionally includes various sensors, suchas GPS sensor 532, accelerometer 534, directional sensor 540 (e.g.,compass), gyroscope 536, motion sensor 538, and/or a combinationthereof, all of which can be operatively connected to I/O section 514.

Memory 518 of personal electronic device 500 can include one or morenon-transitory computer-readable storage mediums, for storingcomputer-executable instructions, which, when executed by one or morecomputer processors 516, for example, can cause the computer processorsto perform the techniques described below, including processes 700(FIGS. 7A-7B), 900 (FIG. 9), 1100 (FIG. 11), 1300 (FIG. 13), 1900 (FIGS.19A-19B), 2100 (FIGS. 21A-21B), and 2300 (FIGS. 23A-23B). Personalelectronic device 500 is not limited to the components and configurationof FIG. 5B, but can include other or additional components in multipleconfigurations.

As used here, the term “affordance” refers to a user-interactivegraphical user interface object that is, optionally, displayed on thedisplay screen of devices 100, 300, and/or 500 (FIGS. 1, 3, and 5). Forexample, an image (e.g., icon), a button, and text (e.g., hyperlink)each optionally constitute an affordance.

As used herein, the term “focus selector” refers to an input elementthat indicates a current part of a user interface with which a user isinteracting. In some implementations that include a cursor or otherlocation marker, the cursor acts as a “focus selector” so that when aninput (e.g., a press input) is detected on a touch-sensitive surface(e.g., touchpad 355 in FIG. 3 or touch-sensitive surface 451 in FIG. 4B)while the cursor is over a particular user interface element (e.g., abutton, window, slider, or other user interface element), the particularuser interface element is adjusted in accordance with the detectedinput. In some implementations that include a touch screen display(e.g., touch-sensitive display system 112 in FIG. 1A or touch screen 112in FIG. 4A) that enables direct interaction with user interface elementson the touch screen display, a detected contact on the touch screen actsas a “focus selector” so that when an input (e.g., a press input by thecontact) is detected on the touch screen display at a location of aparticular user interface element (e.g., a button, window, slider, orother user interface element), the particular user interface element isadjusted in accordance with the detected input. In some implementations,focus is moved from one region of a user interface to another region ofthe user interface without corresponding movement of a cursor ormovement of a contact on a touch screen display (e.g., by using a tabkey or arrow keys to move focus from one button to another button); inthese implementations, the focus selector moves in accordance withmovement of focus between different regions of the user interface.Without regard to the specific form taken by the focus selector, thefocus selector is generally the user interface element (or contact on atouch screen display) that is controlled by the user so as tocommunicate the user's intended interaction with the user interface(e.g., by indicating, to the device, the element of the user interfacewith which the user is intending to interact). For example, the locationof a focus selector (e.g., a cursor, a contact, or a selection box) overa respective button while a press input is detected on thetouch-sensitive surface (e.g., a touchpad or touch screen) will indicatethat the user is intending to activate the respective button (as opposedto other user interface elements shown on a display of the device).

As used in the specification and claims, the term “characteristicintensity” of a contact refers to a characteristic of the contact basedon one or more intensities of the contact. In some embodiments, thecharacteristic intensity is based on multiple intensity samples. Thecharacteristic intensity is, optionally, based on a predefined number ofintensity samples, or a set of intensity samples collected during apredetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10seconds) relative to a predefined event (e.g., after detecting thecontact, prior to detecting liftoff of the contact, before or afterdetecting a start of movement of the contact, prior to detecting an endof the contact, before or after detecting an increase in intensity ofthe contact, and/or before or after detecting a decrease in intensity ofthe contact). A characteristic intensity of a contact is, optionally,based on one or more of: a maximum value of the intensities of thecontact, a mean value of the intensities of the contact, an averagevalue of the intensities of the contact, a top 10 percentile value ofthe intensities of the contact, a value at the half maximum of theintensities of the contact, a value at the 90 percent maximum of theintensities of the contact, or the like. In some embodiments, theduration of the contact is used in determining the characteristicintensity (e.g., when the characteristic intensity is an average of theintensity of the contact over time). In some embodiments, thecharacteristic intensity is compared to a set of one or more intensitythresholds to determine whether an operation has been performed by auser. For example, the set of one or more intensity thresholdsoptionally includes a first intensity threshold and a second intensitythreshold. In this example, a contact with a characteristic intensitythat does not exceed the first threshold results in a first operation, acontact with a characteristic intensity that exceeds the first intensitythreshold and does not exceed the second intensity threshold results ina second operation, and a contact with a characteristic intensity thatexceeds the second threshold results in a third operation. In someembodiments, a comparison between the characteristic intensity and oneor more thresholds is used to determine whether or not to perform one ormore operations (e.g., whether to perform a respective operation orforgo performing the respective operation), rather than being used todetermine whether to perform a first operation or a second operation.

FIG. 5C illustrates detecting a plurality of contacts 552A-552E ontouch-sensitive display screen 504 with a plurality of intensity sensors524A-524D. FIG. 5C additionally includes intensity diagrams that showthe current intensity measurements of the intensity sensors 524A-524Drelative to units of intensity. In this example, the intensitymeasurements of intensity sensors 524A and 524D are each 9 units ofintensity, and the intensity measurements of intensity sensors 524B and524C are each 7 units of intensity. In some implementations, anaggregate intensity is the sum of the intensity measurements of theplurality of intensity sensors 524A-524D, which in this example is 32intensity units. In some embodiments, each contact is assigned arespective intensity that is a portion of the aggregate intensity. FIG.5D illustrates assigning the aggregate intensity to contacts 552A-552Ebased on their distance from the center of force 554. In this example,each of contacts 552A, 552B, and 552E are assigned an intensity ofcontact of 8 intensity units of the aggregate intensity, and each ofcontacts 552C and 552D are assigned an intensity of contact of 4intensity units of the aggregate intensity. More generally, in someimplementations, each contact j is assigned a respective intensity Ijthat is a portion of the aggregate intensity, A, in accordance with apredefined mathematical function, Ij=A·(Dj/ΣDi), where Dj is thedistance of the respective contact j to the center of force, and ΣDi isthe sum of the distances of all the respective contacts (e.g., i=1 tolast) to the center of force. The operations described with reference toFIGS. 5C-5D can be performed using an electronic device similar oridentical to device 100, 300, or 500. In some embodiments, acharacteristic intensity of a contact is based on one or moreintensities of the contact. In some embodiments, the intensity sensorsare used to determine a single characteristic intensity (e.g., a singlecharacteristic intensity of a single contact). It should be noted thatthe intensity diagrams are not part of a displayed user interface, butare included in FIGS. 5C-5D to aid the reader.

In some embodiments, a portion of a gesture is identified for purposesof determining a characteristic intensity. For example, atouch-sensitive surface optionally receives a continuous swipe contacttransitioning from a start location and reaching an end location, atwhich point the intensity of the contact increases. In this example, thecharacteristic intensity of the contact at the end location is,optionally, based on only a portion of the continuous swipe contact, andnot the entire swipe contact (e.g., only the portion of the swipecontact at the end location). In some embodiments, a smoothing algorithmis, optionally, applied to the intensities of the swipe contact prior todetermining the characteristic intensity of the contact. For example,the smoothing algorithm optionally includes one or more of: anunweighted sliding-average smoothing algorithm, a triangular smoothingalgorithm, a median filter smoothing algorithm, and/or an exponentialsmoothing algorithm. In some circumstances, these smoothing algorithmseliminate narrow spikes or dips in the intensities of the swipe contactfor purposes of determining a characteristic intensity.

The intensity of a contact on the touch-sensitive surface is,optionally, characterized relative to one or more intensity thresholds,such as a contact-detection intensity threshold, a light press intensitythreshold, a deep press intensity threshold, and/or one or more otherintensity thresholds. In some embodiments, the light press intensitythreshold corresponds to an intensity at which the device will performoperations typically associated with clicking a button of a physicalmouse or a trackpad. In some embodiments, the deep press intensitythreshold corresponds to an intensity at which the device will performoperations that are different from operations typically associated withclicking a button of a physical mouse or a trackpad. In someembodiments, when a contact is detected with a characteristic intensitybelow the light press intensity threshold (e.g., and above a nominalcontact-detection intensity threshold below which the contact is nolonger detected), the device will move a focus selector in accordancewith movement of the contact on the touch-sensitive surface withoutperforming an operation associated with the light press intensitythreshold or the deep press intensity threshold. Generally, unlessotherwise stated, these intensity thresholds are consistent betweendifferent sets of user interface figures.

An increase of characteristic intensity of the contact from an intensitybelow the light press intensity threshold to an intensity between thelight press intensity threshold and the deep press intensity thresholdis sometimes referred to as a “light press” input. An increase ofcharacteristic intensity of the contact from an intensity below the deeppress intensity threshold to an intensity above the deep press intensitythreshold is sometimes referred to as a “deep press” input. An increaseof characteristic intensity of the contact from an intensity below thecontact-detection intensity threshold to an intensity between thecontact-detection intensity threshold and the light press intensitythreshold is sometimes referred to as detecting the contact on thetouch-surface. A decrease of characteristic intensity of the contactfrom an intensity above the contact-detection intensity threshold to anintensity below the contact-detection intensity threshold is sometimesreferred to as detecting liftoff of the contact from the touch-surface.In some embodiments, the contact-detection intensity threshold is zero.In some embodiments, the contact-detection intensity threshold isgreater than zero.

In some embodiments described herein, one or more operations areperformed in response to detecting a gesture that includes a respectivepress input or in response to detecting the respective press inputperformed with a respective contact (or a plurality of contacts), wherethe respective press input is detected based at least in part ondetecting an increase in intensity of the contact (or plurality ofcontacts) above a press-input intensity threshold. In some embodiments,the respective operation is performed in response to detecting theincrease in intensity of the respective contact above the press-inputintensity threshold (e.g., a “down stroke” of the respective pressinput). In some embodiments, the press input includes an increase inintensity of the respective contact above the press-input intensitythreshold and a subsequent decrease in intensity of the contact belowthe press-input intensity threshold, and the respective operation isperformed in response to detecting the subsequent decrease in intensityof the respective contact below the press-input threshold (e.g., an “upstroke” of the respective press input).

FIGS. 5E-5H illustrate detection of a gesture that includes a pressinput that corresponds to an increase in intensity of a contact 562 froman intensity below a light press intensity threshold (e.g., “IT_(L)”) inFIG. 5E, to an intensity above a deep press intensity threshold (e.g.,“IT_(D)”) in FIG. 5H. The gesture performed with contact 562 is detectedon touch-sensitive surface 560 while cursor 576 is displayed overapplication icon 572B corresponding to App 2, on a displayed userinterface 570 that includes application icons 572A-572D displayed inpredefined region 574. In some embodiments, the gesture is detected ontouch-sensitive display 504. The intensity sensors detect the intensityof contacts on touch-sensitive surface 560. The device determines thatthe intensity of contact 562 peaked above the deep press intensitythreshold (e.g., “IT_(D)”). Contact 562 is maintained on touch-sensitivesurface 560. In response to the detection of the gesture, and inaccordance with contact 562 having an intensity that goes above the deeppress intensity threshold (e.g., “IT_(D)”) during the gesture,reduced-scale representations 578A-578C (e.g., thumbnails) of recentlyopened documents for App 2 are displayed, as shown in FIGS. 5F-5H. Insome embodiments, the intensity, which is compared to the one or moreintensity thresholds, is the characteristic intensity of a contact. Itshould be noted that the intensity diagram for contact 562 is not partof a displayed user interface, but is included in FIGS. 5E-5H to aid thereader.

In some embodiments, the display of representations 578A-578C includesan animation. For example, representation 578A is initially displayed inproximity of application icon 572B, as shown in FIG. 5F. As theanimation proceeds, representation 578A moves upward and representation578B is displayed in proximity of application icon 572B, as shown inFIG. 5G. Then, representations 578A moves upward, 578B moves upwardtoward representation 578A, and representation 578C is displayed inproximity of application icon 572B, as shown in FIG. 5H. Representations578A-578C form an array above icon 572B. In some embodiments, theanimation progresses in accordance with an intensity of contact 562, asshown in FIGS. 5F-5G, where the representations 578A-578C appear andmove upwards as the intensity of contact 562 increases toward the deeppress intensity threshold (e.g., “IT_(D)”). In some embodiments, theintensity, on which the progress of the animation is based, is thecharacteristic intensity of the contact. The operations described withreference to FIGS. 5E-5H can be performed using an electronic devicesimilar or identical to device 100, 300, or 500.

In some embodiments, the device employs intensity hysteresis to avoidaccidental inputs sometimes termed “jitter,” where the device defines orselects a hysteresis intensity threshold with a predefined relationshipto the press-input intensity threshold (e.g., the hysteresis intensitythreshold is X intensity units lower than the press-input intensitythreshold or the hysteresis intensity threshold is 75%, 90%, or somereasonable proportion of the press-input intensity threshold). Thus, insome embodiments, the press input includes an increase in intensity ofthe respective contact above the press-input intensity threshold and asubsequent decrease in intensity of the contact below the hysteresisintensity threshold that corresponds to the press-input intensitythreshold, and the respective operation is performed in response todetecting the subsequent decrease in intensity of the respective contactbelow the hysteresis intensity threshold (e.g., an “up stroke” of therespective press input). Similarly, in some embodiments, the press inputis detected only when the device detects an increase in intensity of thecontact from an intensity at or below the hysteresis intensity thresholdto an intensity at or above the press-input intensity threshold and,optionally, a subsequent decrease in intensity of the contact to anintensity at or below the hysteresis intensity, and the respectiveoperation is performed in response to detecting the press input (e.g.,the increase in intensity of the contact or the decrease in intensity ofthe contact, depending on the circumstances).

For ease of explanation, the descriptions of operations performed inresponse to a press input associated with a press-input intensitythreshold or in response to a gesture including the press input are,optionally, triggered in response to detecting either: an increase inintensity of a contact above the press-input intensity threshold, anincrease in intensity of a contact from an intensity below thehysteresis intensity threshold to an intensity above the press-inputintensity threshold, a decrease in intensity of the contact below thepress-input intensity threshold, and/or a decrease in intensity of thecontact below the hysteresis intensity threshold corresponding to thepress-input intensity threshold. Additionally, in examples where anoperation is described as being performed in response to detecting adecrease in intensity of a contact below the press-input intensitythreshold, the operation is, optionally, performed in response todetecting a decrease in intensity of the contact below a hysteresisintensity threshold corresponding to, and lower than, the press-inputintensity threshold.

Attention is now directed towards embodiments of user interfaces (“UI”)and associated processes that are implemented on an electronic device,such as portable multifunction device 100, device 300, or device 500.

FIGS. 6A-6Q illustrate exemplary devices and user interfaces forsimulating an optical effect, in accordance with some embodiments. Theuser interfaces in these figures are used to illustrate the simulatedoptical effect processes described below, including the processes inFIGS. 7A-7B.

FIG. 6A illustrates an exemplary electronic device 600 with a firstcamera 602 and a second camera 604 that are located, for example, on therear of the electronic device. In some examples, the first camera 602and the second camera 604 have fixed, but different, focal lengths. Insome examples, the focal length, field of view, and/or opticalmagnification properties of the optical system is fixed for each of thecameras (e.g., 602, 604). In some embodiments, in addition to havingdifferent fixed focal lengths, the cameras (e.g., 602, 604) havedifferent fixed fields of view and different fixed optical magnificationproperties.

In some embodiments, the first camera 602 has a first field of view andthe second camera 604 has a second field of view, wherein the firstfield of view and the second field of view overlap. In some examples,the first camera 602 and the second camera 604 are spaced apart so thata parallax between images detected (e.g., captured) by the cameras isused to determine distances to objects represented by different portionsof a digital viewfinder displaying image data from one or more of camera602 and camera 604. In some embodiments, the first camera 602 and thesecond camera 604 are located on a surface of the electronic device 600and the optical axes of the cameras 602 and 604 are arranged such thatthey are parallel or substantially parallel. In some examples, the firstcamera 602 and the second camera 604 capture overlapping fields of view,for example, at least 50% overlapping, at least 90% overlapping, ormore. In some examples, the first camera 602 has a wider field of viewthan the second camera 604. In some examples, the second camera has awider field of view than the first camera. When a wide-angle camera(e.g., a camera with a wide-angle lens) has a wider field of view than atelephoto camera (e.g., a camera with a telephoto lens), at a 1×magnification of the wide-angle camera objects appear further away thanat a 1× magnification of the telephoto camera. If the wide-angle cameraand the telephoto camera have overlapping fields of view such that thefield of view of the telephoto camera is approximately centered on thefield of view of the wide angle camera, an image captured with thetelephoto camera at a 1× magnification level will, in some circumstances(e.g., where the subject of the image is at least 1 meter away), appearto be an optical zoom of a corresponding image captured with thewide-angle camera at a 1× magnification level.

FIG. 6B illustrates the front of exemplary electronic device 600including display 612. The electronic device 600 displays, on thedisplay 612, a digital viewfinder 614 including a preview based on datareceived from the first camera 602. In some embodiments, objects (e.g.,611A, 611B, 615) displayed in the digital viewfinder are located atvarying distances from the camera (and/or the electronic device 600). Insome embodiments, as illustrated in FIGS. 6B-6H, data is displayed inthe viewfinder without applying a simulated optical effect, such as abokeh simulated optical effect. In some embodiments, the electronicdevice displays, on the display 612, the digital viewfinder 614 inresponse to the electronic device 600 receiving a user input—for exampledetecting a tap gesture at a location on a touch-sensitive surfacecorresponding to a camera application affordance (e.g., 430 of FIG. 4A).

In some embodiments, the electronic device 600 displays, on the display612, a camera mode selection menu 619, which includes affordancescorresponding to various selectable camera modes. In response to theelectronic device 600 receiving a signal corresponding to a selection ofa camera mode, the electronic device 600 configures the cameraapplication for the selected camera mode. For example, FIG. 6Billustrates a “PHOTO” camera mode, or photo mode, that is active. Insome examples, the electronic displays, on the display 612, a camerashutter affordance 617 (e.g., concurrently with the digital viewfinder614) which, when activated, causes the electronic device 600 to capturean image, such as by storing, in memory, data from the first cameraand/or the second camera. In some examples, the captured imagecorresponds to the preview displayed in the digital viewfinder 614(e.g., at the time the electronic device 600 detects activation of thecamera shutter affordance 617).

FIG. 6C illustrates electronic device 600 receiving a user input 622corresponding to an instruction to initiate a camera mode change. InFIG. 6C, the electronic device 600 receives the user input on the“PORTRAIT” mode menu item displayed on display 612. As a result, theelectronic device 600 changes the camera capture mode to the “PORTRAIT”mode. In some examples, the “PORTRAIT” mode, or the portrait mode,corresponds to a simulated optical effect mode. In some embodiments, thesimulated optical effect mode is a mode in which a simulated opticaleffect is applied to the digital viewfinder when a set of one or moreconditions is met, as described below. In some embodiments, the menuname, label, or affordance for the camera mode corresponding to thesimulated optical effect is varied.

FIG. 6D illustrates the result of receiving user input 622 in FIG. 6Cwhen the electronic device 600 transitions from the photo mode as shownin FIG. 6B to the portrait mode. Once the electronic device 600 is inthe portrait mode, the portrait menu label is differentiated from theremaining menu items so that a user can easily identify when the modechanged has occurred and what mode is selected. In some embodiment, thedifferentiating can be via, for example, highlighting, bolding,different size font, varying font type, or any other mechanism todistinguish the selected mode from the non-selected modes.

In FIG. 6E, while displaying the digital viewfinder, the electronicdevice 600 determines whether the set of one or more conditions is met.In some examples, a condition of the set of one or more conditions ismet when a subject is detected. In the example illustrated in FIG. 6E, asubject is not detected because, for example, the subject is too far andthe electronic device 600 cannot differentiate the subject from theremaining objects in the scene. In some examples, as illustrated in FIG.6E, in accordance with a determination that the set of one or moreconditions is not met, the electronic device displays, on the display, agraphical indication 642 of a condition that is not met. In someexamples, as illustrated in FIG. 6E, the electronic device does notdetect a subject (e.g., the camera focus is 10 m or more) and instructsthe user (e.g., using the graphical indication) to place a subjectwithin an acceptable distance (e.g., within 8 feet and 2.5 m). In someexamples, an affordance is displayed in the viewfinder to allow a userto disable or enable such instructions. In some examples, in accordancewith the determination that the set of one or more conditions are met,the electronic device forgoes displaying, on the display, the graphicalindication 642 instructing the user. Thus, in some examples, theelectronic device does not instruct the user when user action is nothelpful (or required) for applying the simulated optical effect.

In some examples, the electronic device detects a subject, but thesubject is too far away (e.g., focus is between 2.5 m and 10 m), and theelectronic device instructs the user (e.g., using the graphicalindication) to move closer to camera (e.g., to within 8 feet). In someexamples, the electronic device determines an amount of light is too low(e.g., 400 lux or less), and instructs the user (e.g., using thegraphical indication) to provide more light. In some examples, anaffordance is displayed in the viewfinder to allow a user to disable orenable such instructions. In some examples, in accordance with thedetermination that the set of one or more conditions are met: electronicdevice 600 forgoes displaying, on the display, the graphical indicationinstructing the user. Thus, in some examples, the electronic device doesnot instruct the user when user action is not helpful for applying thesimulated optical effect.

As illustrated in FIGS. 6E and 6F, in some examples, the electronicdevice 600 fails to detect the subject. In some examples, in accordancewith failing to detect the subject, the electronic device 600, displays,in the digital viewfinder 614 on the display, one or more visual markers636 (e.g., a visual boundary) that are centered in the digitalviewfinder, as shown in FIG. 6F. In some examples, in accordance withdetecting no subjects, the electronic device 600 displays in the digitalviewfinder 614 on the display, one or more visual markers (e.g., avisual boundary) that is centered in the digital viewfinder. In someexamples, the one or more visual markers 636 indicate to the user thearea within the scene that will be placed into focus or otherwise actedon by the electronic device.

As illustrated in FIG. 6G, a condition of the set of one or moreconditions is met when the electronic device detects a subject within apredetermined distance from the electronic device 600 (e.g., a distancefrom subject to the first camera or to the second camera). In theexample of FIG. 6G, the set of one or more conditions is not met, andthus the electronic device does not apply the simulated optical effectto the preview displayed in the digital viewfinder 614. In someembodiments, the electronic device 600 automatically (e.g., without userintervention, without user input), determines a distance to the subject.For example, the electronic device 600 repeatedly (or continuously)tracks the subject and determines the distance to the subject. In someexamples, the determination of the distance to the subject is based on adepth map generated based on a parallax effect (e.g., using the firstcamera and the second camera). In some examples, the determination ofthe distance to the subject is based on a focus distance of either (orboth) the first camera or the second camera. In some examples, the firstcondition of the set of one or more conditions includes determiningwhether: a focus distance is 8 feet or more, a focus distance is within8 feet and 2.5 m, or the amount of light is 400 lux or more. In someembodiments, the determination of whether the first condition is met isbased on data from one camera sensor (e.g., focal length). In someembodiments, the determination of whether the first condition is met isbased on data from both the first camera and the second camera. In someembodiments, the electronic device 600 displays a visual marker 636(e.g., around the subject, around a portion of the subject, or aroundthe head and shoulder portion of a person that is the subject) toindicate that the electronic device 600 detected a subject in thedigital viewfinder 614. In some embodiments, the electronic device doesnot display the one or more visual markers (e.g., 636) even when thesubject is detected.

As illustrated in FIG. 6H, in some examples, a condition of the set ofone or more conditions is met when the electronic device detects that anamount of detected light (e.g., at the first camera, at the secondcamera) that exceeds a minimum light threshold. In this example, thedetected light (corresponding to the darkness 660) does not exceed theminimum light threshold and is too low for the portrait mode. In someexamples, if the amount of light is insufficient for the portrait mode(e.g., does not exceed the minimum light threshold), the electronicdevice 600 displays, on the display, an indication to the user that notenough light is present 642. In some embodiments, the minimum lightthreshold is 100 lux, 200 lux, 300 lux, 400 lux, 500 lux, 600 lux, 700lux, or some other threshold value determined based on the capabilitiesof the camera(s) to function in low light environments. Thus, in someexamples, the simulated optical effect is applied based on the amount oflight detected. In some examples, the electronic device 600 instructsthe user to improve light conditions by not applying the simulatedoptical effect when light conditions are not optimal.

As illustrated in FIGS. 6E, 6G, and 6H, in accordance with adetermination that the set of one or more conditions are not met, theelectronic device 600 displays, on the display, a graphical indication642 of a condition that is not met. In some examples, the electronicdevice 600 does not detect a subject (e.g., focus is 10 m or more) andinstructs the user (e.g., using the graphical indication) to place asubject within an acceptable distance (e.g., within 8 feet and 2.5 m),as illustrated in FIG. 6E. In some examples, the electronic device 600detects a subject, but the subject is too far away (e.g., focus isbetween 10 m and 2.5 m), and the electronic device 600 instructs theuser (e.g., using the graphical indication) to move closer to camera(e.g., to within 8 feet), as illustrated in FIG. 6G. In some examples,the electronic device 600 determines an amount of light is too low(e.g., 400 lux or less), and instructs the user (e.g., using thegraphical indication) to provide more light, as illustrated in FIG. 6H.In some examples, an affordance is displayed in the viewfinder to allowa user to disable or enable such instructions. In some examples, inaccordance with the determination that the set of one or more conditionsis met, the electronic device forgoes displaying, on the display, thegraphical indication 642 instructing the user. Thus, in some examples,the electronic device 600 does not instruct the user when user action isnot helpful for applying the simulated optical effect.

Table A below illustrates exemplary results when the electronic device600 is operating in the portrait mode. Entries in the first columnspecify whether the optical effect (e.g., depth effect, bokeh) isapplied to the preview displayed in the digital viewfinder (e.g., 614)while the electronic device is operating in the portrait mode. Entriesin the second column represent the status of the graphical indication(e.g., 675 of FIG. 6J) which, in some embodiments, visually changes(e.g., color, translucency, hue, contrast) based on whether the opticaleffect is applied. In some embodiments, the graphical indication (e.g.,675 of FIG. 6J) is displayed regardless of whether the optical effect isapplied or not applied. In some embodiments, the graphical indication(e.g., 675 of FIG. 6J) is displayed when the optical effect is appliedand is not displayed when the optical effect is not applied. In someexamples, the graphical indication (e.g., 675 of FIG. 6J) is highlightwhen the optical effect is applied and is not highlighted when theoptical effect is not applied.

Furthermore, entries in the third column of Table A represent conditionsthat may be met while the electronic device is operating in the portraitmode. Entries in the fourth column represent the graphical indication(e.g., 642, instructing the user) displayed, on the display, in thedigital viewfinder as a result of the detected condition in the thirdcolumn. In some embodiments, entries in the fourth column are suggestiveof the steps that the user must perform in order for the device 600 tomeet one or more conditions (e.g., the optical effect conditions) suchthat the electronic device applies the optical effect. In some examples,the electronic device determines an amount of light is too low (e.g.,less than 400 lux), and instructs the user (e.g., using the graphicalindication 642) to provide more light, and thus causes the electronicdevice to meet the optical effects conditions. Entries in the fifthcolumn specify whether (and types of) one or more visual markers (e.g.,636 of FIG. 6J) that will be displayed in the digital viewfinder if thecondition in the corresponding row in the third column is satisfied. Insome examples, for the optical effect conditions to be met, one or more(e.g., all) of the following conditions must be met (1) the focus mustnot be under a minimum (e.g., 50 cm) (2) the focus must not be fartherthan a maximum (e.g., 2.5 m), (3) and light detected must not be under avalue (e.g., 400 lux).

TABLE A PORTRAIT MODE Graphical indication of optical effect (e.g.,“Depth Effect”, Graphical Optical effect “Portrait Detected indicationVisual marker for applied Mode”) condition warning subject No Not Focusat 2.5 m or Place None highlighted farther (no subject subject detected)within 2.5 m No Not Focus at 2.5 m or Move closer Yes (depends on typehighlighted farther (subject of subject) detected) No Not Focus under 50cm Move None highlighted farther away No Not Light below More light Nonehighlighted 400lux required Yes Highlighted Optical Effect None Singlevisual marker Conditions Met + encompassing subject's Single person facedetected Yes Highlighted Optical Effect None Multiple visual markersConditions Met + each encompassing a Multiple people respectivesubject's detected face Yes Highlighted Optical Effect None NoneConditions Met + No people detected (no user-selected focal point) YesHighlighted Optical Effect None Single subject indicator ConditionsMet + at user-selected focal No people detected point (user-selectedfocal point)

As illustrated in FIG. 6I, in accordance with a determination that theset of one or more conditions is met, the electronic device 600 appliesa simulated optical effect 680 (e.g., a bokeh simulated optical effect)to the preview displayed in the digital viewfinder, wherein thesimulated optical effect is based on data received from the first cameraand the second camera. In this example, a simulated optical effect 680is applied to the objects in the background of the scene (e.g., thetrees) and is not applied to the object in the foreground of the scene(e.g., the subject).

As illustrated in FIG. 6J, in some examples, in accordance with adetermination that the set of one or more conditions is met, theelectronic device 600 displays, on the display, one or more visualmarkers 636 around the subject (or a portion of the subject). In someexamples, a visual characteristic of the one or more visual markers 636is updated in response to the determination that the set of one or moreconditions is met. For example, the one or more visual markers 636illustrated in FIG. 6G indicate that the electronic device 600 hasdetected a subject in the digital viewfinder, and in response to thedetermination that the set of one or more conditions is met, theelectronic device updates a characteristics (e.g., size, location,color) of the one or more visual markers to provide the user with anindication that the set of one or more conditions is met and,optionally, that the simulated optical effect was (or will be) applied.In some embodiments, the one or more visual markers 636 are notdisplayed even when the set of one or more conditions is met and thesimulated optical effect is applied.

As illustrated in FIGS. 6B-6H, in some examples, in accordance with adetermination that the set of one or more conditions is not met, theelectronic device 600 displays, on the display, the preview in thedigital viewfinder without applying the simulated optical effect. Asillustrated in FIGS. 6I and 6J, in some examples, the simulated opticaleffect is a simulated bokeh 680. In some embodiments, a non-exhaustivelist of the possible simulated optical effects includes a bokehsimulated optical effect, a simulated color filter, and a simulatedgamma adjustment. In some embodiments, the electronic device applies thesimulated optical effect such that a first part (e.g., 680) of thepreview in the digital viewfinder has a simulated bokeh effect and asecond part (e.g., 615) (different from the first part) of the digitalviewfinder does not have a simulated bokeh effect. Thus, in someexamples, the digital viewfinder mimics an optical bokeh effect commonlyseen in viewfinders of (and images captured with) SLR cameras.

As illustrated in FIGS. 6I and 6J, in some examples, in accordance witha determination that the set of one or more conditions is met, theelectronic device 600 applies a simulated optical effect 680 (e.g., abokeh simulated optical effect) to the preview displayed in the digitalviewfinder 614, wherein the simulated optical effect is based on datareceived from the first camera 602 and the second camera 604. In someexamples, as illustrated in FIG. 6I, the electronic device 600 appliesthe simulated optical effect to the preview displayed in the digitalviewfinder 614 without displaying an indication that the simulatedoptical effect has been applied and without displaying any visualmarker. In some examples, as illustrated in FIG. 6J, the electronicdevice 600 applies the simulated optical effect to the preview displayedin the digital viewfinder 614 and displays an indication 675 that thesimulated optical effect has been applied and one or more visual markers636.

In some embodiments, prior to the electronic device 600 applying thesimulated optical effect to the preview in the digital viewfinder 614,the preview in the digital viewfinder 614 is not based on the secondcamera. In some examples, the displayed viewfinder 614 is based on onlythe first camera 602 before the set of one or more conditions is met. Insome examples, the displayed viewfinder 614 is based on both the firstcamera 602 and the second camera 604 after the set of one or moreconditions is met. Thus, in some examples, the electronic deviceconserves power by only using one camera when both cameras are notneeded, but uses two (or more) cameras when the additional camerasprovide an advantage (e.g., a visual advantage).

In some embodiments, as illustrated in FIG. 6K, the electronic device600 applies the simulated optical effect differently to differentportions 651 and 652 of the preview in the digital viewfinder. In someembodiments, the simulated optical effect (e.g., a bokeh effect) isapplied differently to different portions of the preview based on (or asa function of) the distance from the electronic device 600 to objects inthe different portions of the preview. For example, a first portion ofthe preview (e.g., 652) will appear to have a first degree of blurringand a second portion of the preview (e.g., 651, that represents anobject that is further from the electronic device 600 than representedby the first portion) will appear to have a second degree of blurringthat is more intense than the first degree of blurring. Thus, a previewof a scene with varying depths will have varying blur intensities (e.g.,degrees of blurring) throughout the preview. In some embodiments, asillustrated in FIG. 6K, device 600 does not display a graphicalindication (e.g., 675, text including “Depth Effect”) that a simulatedoptical effect (e.g., a simulated bokeh effect) is being applied.

In some embodiments, as illustrated in FIG. 6K, a first portion of thepreview 651 depicts a first object, wherein the first object is at afirst distance from the electronic device 600, a second portion of thepreview 652 depicts a second object, and wherein the second object is asecond distance (different from the first distance) from the electronicdevice 600. In some examples, applying the simulated optical effect tothe preview 614 includes applying the simulated optical effect to thefirst portion (e.g., 652) with a first magnitude and applying thesimulated optical effect to the second portion (e.g., 651) with a secondmagnitude that is different from (e.g., greater than) the firstmagnitude. Thus, in some examples, varying intensities of the simulatedoptical effect are applied to different portions of the preview in thedigital viewfinder, which indicates the distance to the objects to aviewer of the preview.

In some embodiments, as illustrated in FIG. 6K, applying the simulatedoptical effect causes a first portion (e.g., 651, 652) of the digitalviewfinder 614 to exhibit an effect, such as a bokeh effect, and asecond portion (e.g., 615, different from the first portion) of thedigital viewfinder to not exhibit the effect. In some examples, thesimulated optical effect is repeatedly updated based on data from thefirst camera and the second camera and repeatedly applied to the digitalviewfinder. In some embodiments the simulated optical effect is based onwhich portion of the field of view of the camera has been selected asthe point of focus, so when the distance of an object at the point offocus changes or the user selects a new point of focus, the simulatedoptical effect changes as well. For example, the simulated opticaleffect initially causes a first portion of a first preview imagedisplayed in the digital viewfinder 614 to exhibit an effect (and not asecond portion) and an updated simulated optical effect causes a thirdportion (different from the first portion) of a second preview imagedisplayed in the digital viewfinder 614 to exhibit the effect (and not afourth portion of the second preview image). In some examples, thesimulated optical effect is applied to the first portion of previewimages displayed in the viewfinder and is not applied to a secondportion (different from the first portion) of the preview imagesdisplayed in the viewfinder. In some examples, the simulated opticaleffect is applied to a first portion of a first preview image displayedin the viewfinder (and not a second portion) and to a third portion(different from the first portion) of a second preview image displayedin the viewfinder (and not a fourth portion). As a result, theviewfinder exhibits a simulated optical effect. This simulated opticaleffect is also retained for images captured while the simulated opticaleffect is applied to the viewfinder.

In some embodiments, the electronic device 600 generates a depth mapbased on data received from the first camera 602 and the second camera604, and the simulated optical effect is based on the depth map. In someexamples, the electronic device 600 uses images captured by the firstcamera 602 and the second camera 604 to generate the depth map by usinga parallax effect where the observed difference in position of an objectfrom two different points of view (e.g., the two cameras) is greater forobjects that are closer to the points of view and less for objects thatare further from the points of view. In some examples, the depth mapincludes information indicating distances from the electronic device 600to various elements (e.g., pixels, objects) depicted in the digitalviewfinder (e.g., based on the overlapping fields of view of the firstcamera and the second camera).

In some embodiments, a condition of the set of one or more conditions ismet when a focus distance of the first camera 602 (or the second camera604) exceeds a minimum distance threshold (e.g., 8 feet). Thus, in someexamples, the simulated optical effect is applied based on the firstcamera focusing on a subject that is not too close to the electronicdevice 600.

In some embodiments, a condition of the set of one or more conditions ismet when a focus distance of the first camera 602 (or the second camera604) does not exceed a maximum distance threshold (e.g., 2.5 meters).Thus, in some examples, the simulated optical effect is applied based onthe first camera 602 focusing on a subject that is not too far from theelectronic device 600.

In some embodiments, the set of one or more conditions is based onlighting conditions. In some embodiments, a sixth condition of the setof one or more conditions is met when an amount of detected light (e.g.,at the first camera 602, at the second camera 604) does not exceed amaximum light threshold (e.g., 1000 lux, 2000 lux, 3000 lux, or someother threshold value determined based on the capabilities of thecamera(s) to function in high light environments). Thus, in someexamples, the electronic device 600 encourages the user to improve lightconditions by not applying the simulated optical effect when lightconditions are not optimal.

In some embodiments, the determination by the electronic device 600 ofwhether the set of one of more conditions is met is based on data fromthe first camera. In some examples, data from the second camera is notused to determine whether the set of one or more conditions have beenmet. In some examples, data from both the first camera and the secondcamera are used to determine whether the set of one or more conditionshave been met.

In some embodiments, the determination by the electronic device 600 ofwhether the set of one of more conditions is met is based on data fromthe second camera. In some examples, data from the first camera is notused to determine whether the set of one or more conditions have beenmet. In some examples, data from both the first camera and the secondcamera are used to determine whether the set of one or more conditionshave been met.

In some embodiments, as illustrated in FIGS. 6L and 6M, in response todetecting the subject 615 (e.g., within or outside the appropriatedistance), the electronic device 600 displays, on the digital viewfinder614 on the display, one or more visual markers 636 (e.g., a visualboundary) that identify the subject. In some examples, the visualcharacteristic (e.g., color of visual markers, size of visual markers,location of visual markers, and distance between visual markers) of theone or more visual markers is based on whether the set of one or moreconditions is met. In some examples, the one or more visual markers is abounding box. In some examples, in accordance with (or in response to)the determination that the set of one or more conditions is met, theelectronic device 600 changes the visual characteristic of the one ormore visual markers to indicate to the user that the set of one or moreconditions is met. In some examples, changing the visual indicationincludes animating the one or more visual markers (e.g., a bounding box)such that the one or more visual markers bounce. Thus, in some examples,the electronic device 600 notifies the user as to whether the set of oneor more conditions is met based on the visual characteristic of the oneor more visual markers. In some examples, the electronic device 600notifies the user as to whether the set of one or more conditions is metvia a visual characteristic of the visual marker.

In some embodiments, as illustrated in FIG. 6N, in accordance withdetecting (e.g., using the first camera 602, the second camera 604) aplurality of subjects, the electronic device 600 displays a plurality ofone or more visual markers 636A-636D (e.g., visual boundaries)corresponding to the plurality of subjects. Thus, in some examples, theelectronic device 600 notifies the user which subjects are being tracked(and/or considered when determining whether the set of one or moreconditions have been met). In some embodiments, as shown in FIG. 6O,device 600 applies a simulated optical effect (e.g., a simulated bokeheffect) and a graphical indication (e.g., 675, text including “DepthEffect”), without displaying a visual marker (e.g., visual marker 636).

In some embodiments, as illustrated in FIG. 6P, in accordance with thedetermination that the set of one or more conditions is met, theelectronic device 600 changes the a visual characteristic (e.g., colorof visual markers, size of visual markers, location of visual markers,distance between visual markers) of the one or more visual markers(e.g., visual boundary) before applying the simulated optical effect.For example, in FIG. 6P, the electronic device displays the one or morevirtual markers (e.g., 636E) with a particular visual characteristic(e.g., a first color, a first location, a first size) and transitionsthe one or more visual markers (e.g., 636F) to a different visualcharacteristic (e.g., a second color, a second location, a second size)before applying the simulated optical effect. In some embodiments, asillustrated in FIG. 6Q, in accordance with a determination that a set ofone or more conditions is met (e.g., focus distance is 8 feet or more,focus distance is within 8 feet and 2.5 m, light is 400 lux or more; insome embodiments, the condition is based on data from one camera sensor(e.g., focal distance data); in some embodiments, the condition is basedon data from both camera sensors), the electronic device applies thesimulated optical effect (e.g., a bokeh simulated optical effect) to thepreview displayed in the digital viewfinder 614. As illustrated in FIG.6Q, as a result, the trees are blurred and the person is not blurred.

In some embodiments, as illustrated in the transition between FIGS. 6Gto 6J, in accordance with the determination that the set of one or moreconditions is met (or not met), the electronic device changes a visualcharacteristic of the one or more visual markers (e.g., from 636 in FIG.6G with, for example, a first color, a first location, a first size to636 in FIG. 6J with second color, different from the first color). Insome examples, in accordance with the determination that the set of oneor more conditions is met, the electronic device changes the color orvisual texture of the one or more visual markers 636. Thus, in someexamples, the change in the visual characteristic indicates to the userthat the set of one or more conditions is met. In some examples, inaccordance with a subsequent determination that the set of one or moreconditions is no longer met (after the set of one or more conditions waspreviously met), the electronic device changes back the first visualcharacteristic of the one or more visual markers (e.g., 636 changing thesecond color back to the first color). Thus, in some examples, theelectronic device 600 notifies the user whether the set of one or moreconditions is met.

In some embodiments, in accordance with detecting the subject (e.g.,within or outside the appropriate distance), the electronic device 600displays, in the digital viewfinder on the display, one or more visualmarkers (e.g., a visual boundary) identifying the subject. In someexamples, a second characteristic (e.g., different from the firstcharacteristic) of the one or more visual markers is based on acharacteristic (e.g., physical characteristic, size of the subject,distance to the subject, location of the subject) of the subject. Thus,in some examples, the electronic device 600 indicates to the user whichsubject is being considered for satisfying the set of one or moreconditions. As illustrated in FIG. 6L, the one or more visual markers636 surrounds a portion of the subject (e.g., from the hips to the head,from the shoulders to the head). When the subject moves further awayfrom the electronic device 600, as illustrated in FIG. 6M, the one ormore visual markers 636 are displayed proportionally smaller tocompensate for the change in the size of the subject in the digitalviewfinder 614.

In some embodiments, as illustrated in FIG. 6J, in accordance withapplying the simulated optical effect (e.g., a bokeh simulated opticaleffect) to the preview displayed in the digital viewfinder 614, theelectronic device 600 displays, (e.g., in the digital viewfinder 614,outside the digital viewfinder 614) on the display, a graphicalindication (e.g., 675, text including “Depth Effect”) that the simulatedoptical effect is being applied to the preview displayed in the digitalviewfinder 614. Thus, a user is quickly able to understand that thesimulated optical effect has been applied. In some embodiments, inaccordance with not applying the simulated optical effect, theelectronic device 600 does not display (e.g., forgoes displaying), onthe display, the graphical indication (e.g., text including “DepthEffect”) that the simulated optical effect is being applied to thepreview displayed in the digital viewfinder. Thus, in some examples, theelectronic device 600 notifies the user that the set of one or moreconditions have been met and, in some examples, the electronic device600 notifies the user that the set of one or more conditions have notbeen met.

In some embodiments, the electronic device 600 detects a user inputrequesting to capture an image (e.g., using the camera application). Inresponse to detecting the user input requesting to capture the image. Inaccordance with the determination that the set of one or more conditionsis not met, the electronic device 600 captures the image (e.g., based ondata from the first camera 602 and not based on data from the secondcamera 604, based on data from the second camera 604 and not based ondata from the first camera 602) without the simulated optical effect. Insome examples, the user activates a shutter affordance 617 that isdisplayed on the display while the set of one or more conditions is notmet, and the electronic device 600 captures (e.g., stores in memory) animage using data from the first camera (or the second camera) withoutapplying the simulated optical effect to the data from the first camera.In some embodiments, in response to detecting the user input requestingto capture the image, in accordance with the determination that the setof one or more conditions is met, the electronic device 600 captures theimage (e.g., based on data from the first camera 602 and the secondcamera 604) with the simulated optical effect (e.g., with the simulatedoptical effect applied to the image). In some examples, the useractivates the shutter affordance 617 that is displayed on the displaywhile the set of one or more conditions is met, and the electronicdevice 600 captures (e.g., stores in memory) an image using data fromthe first camera (and/or the second camera), wherein the simulatedoptical effect is applied to the data.

In some embodiments, while the electronic device 600 displays thepreview in the digital viewfinder 614 without applying the simulatedoptical effect, the electronic device 600 detects a change in the scenein front of one or more of the cameras (e.g., in the field of view ofthe first camera, due to movement of the first camera, movement ofobjects/people in the scene, and/or a change in lighting in the scene).In response to the electronic device 600 detecting the change in thescene, in accordance with a determination that the change in the scenehas caused the set of one or more conditions to be met (e.g., focusdistance is 8 feet or more, focus distance is within 8 feet and 2.5 m,light is 400 lux or more), the electronic device 600 applies thesimulated optical effect (e.g., a bokeh simulated optical effect,simulated color filter, simulated gamma adjustment) to the previewdisplayed in the digital viewfinder 614. In accordance with adetermination that the change in the scene has not caused the set of oneor more conditions (e.g., focus distance is 8 feet or more, focusdistance is within 8 feet and 2.5 m, light is 400 lux or more) to bemet, the electronic device 600 maintains display of the preview in thedigital viewfinder without applying the simulated optical effect (e.g.,a bokeh simulated optical effect, simulated color filter, simulatedgamma adjustment).

FIGS. 7A-7B is a flow diagram illustrating a method for managingsimulated optical effects using an electronic device in accordance withsome embodiments. Method 700 is performed at an electronic device (e.g.,100, 300, 500, 600) with a first camera, a second camera, and a display.Some operations in method 700 are, optionally, combined, the order ofsome operations is, optionally, changed, and some operations are,optionally, omitted.

At block 702, the electronic device displays, on the display (e.g.,612), a digital viewfinder (e.g., 614) including a preview based on datareceived from the first camera (e.g., 602). In some examples, data isdisplayed in the viewfinder (e.g., 614) without applying a simulatedoptical effect, such as a bokeh simulated optical effect.

At blocks 704-706, while displaying the digital viewfinder (e.g., 614):in accordance with a determination that the set of one or moreconditions is met (e.g., focus distance is 8 feet or more, focusdistance is within 8 feet and 2.5 m, light is 400 lux or more), theelectronic device (e.g., 600) applies, at block 726, a simulated opticaleffect (e.g., a bokeh simulated optical effect) to the preview displayedin the digital viewfinder (e.g., 614 at FIG. 6I), wherein the simulatedoptical effect is based on data received from the first camera (e.g.,602) and the second camera (e.g., 604). Thus, the electronic device, byapplying a simulated optical effect to the preview, informs the userthat the set of one or more conditions have been met and informs theuser as to what captured images will look like, thereby prompting theuser to capture an image (with the applied simulated optical effect), asappropriate. In some embodiments, the one or more conditions are basedon data from one camera (e.g., focal distance data). In someembodiments, the one or more conditions are based on data from bothsensors. In some examples, a first condition of the set of one or moreconditions is met when a subject (e.g., 615) is detected within apredetermined distance from the device (e.g., distance from subject(e.g., 615) to the first or second cameras 602, 604).

At block 732 in FIG. 7B, while displaying the digital viewfinder, inaccordance with a determination, at block 720, that the set of one ormore conditions (e.g., focus distance is 8 feet or more, focus distanceis within 8 feet and 2.5 m, light is 400 lux or more) is not met, theelectronic device displays, at block 722, the preview in the digitalviewfinder (e.g., 614 at FIG. 6B) without applying the simulated opticaleffect (e.g., a bokeh simulated optical effect, simulated color filter,simulated gamma adjustment). Thus, the electronic device, by displayingthe preview without applying the simulated optical effect, informs theuser that the set of one or more conditions has not been met and informsthe user as to what captured images will look like (without thesimulated optical effect), thereby prompting the user to take actionssuch that the one or more conditions will be met (so that the simulatedoptical effect will be applied). In some embodiments, the set of one ormore conditions is based on data from one sensor (e.g., focal distancedata). In some embodiments, the set of one or more conditions is basedon data from both sensors.

In some embodiments, the simulated optical effect causes a first portion(e.g., 651, 652 of FIG. 6K) of the digital viewfinder to exhibit aneffect, such as a bokeh effect, and a second portion (e.g., 615 of FIG.6K, different from the first portion) of the digital viewfinder (e.g.,614) to not exhibit the effect. In some examples, the simulated opticaleffect is repeatedly updated based on data from the first camera (e.g.,602) and the second camera (e.g., 604) and repeatedly applied to thedigital viewfinder (e.g., 614). Thus, the electronic device, byrepeatedly updating and applying the simulated optical effect to thedigital viewfinder, informs the user as to what a captured image willlook like at any given time (e.g., live or near-live), thereby promptingthe user to capture an image (with the applied simulated opticaleffect), as appropriate. For example, the simulated optical effectinitially causes a first portion (e.g., 651, 652) of a first previewimage displayed in the viewfinder to exhibit an effect (and not a secondportion) and an updated simulated optical effect causes the thirdportion (different from the first portion) of a second preview imagedisplayed in the viewfinder to exhibit the effect (and not a fourthportion of the second preview image).

In some embodiments, the simulated optical effect (e.g., as shown in680) is applied to the first portion (e.g., 651) of preview imagesdisplayed in the viewfinder and is not applied to a second portion(e.g., 652) (different from the first portion) of the preview imagesdisplayed in the viewfinder. In some examples, the simulated opticaleffect is applied to a first portion of a first preview image displayedin the viewfinder (and not a second portion) and to a third portion(different from the first portion) of a second preview image displayedin the viewfinder (and not a fourth portion). As a result, theviewfinder exhibits a simulated bokeh effect. This simulated bokeheffect is also retained for images captured while the simulated opticaleffect is applied to the viewfinder.

In some embodiments, the first camera (e.g., 602) and the second camera(e.g., 604) have fixed, but different, focal lengths. In some examples,the focal length, field of view, and optical magnification properties ofthe optical system is fixed for each of the cameras, but the fixed focallength is different between the first camera (e.g., 602) and the secondcamera (e.g., 604).

In accordance with some embodiments, prior to applying the simulatedoptical effect to the preview in the digital viewfinder (e.g., 614), thepreview in the digital viewfinder (e.g., 614 at FIG. 6B) is not based onthe second camera (e.g., 604) (e.g., not based on both cameras). In someexamples, the displayed viewfinder (e.g., 614 at FIG. 6B) is based ononly the first camera (e.g., 602) before the set of one or moreconditions is met. Thus, in some examples, the electronic device, by notbasing the preview on the second camera prior to applying the simulatedoptical effect, conserves battery power of the electronic device. Insome examples, the displayed viewfinder (e.g., 614 at FIGS. 6I-6K) isbased on both the first camera (e.g., 602) and the second camera (e.g.,604) after the set of one or more conditions is met.

In accordance with some embodiments, at block 728, the simulated opticaleffect is a simulated bokeh. In some embodiments, the electronic device(e.g., 600) applies the simulated optical effect such that a first part(e.g., 651, 652, 680) of the preview in the digital viewfinder (e.g.,614) has a simulated bokeh effect and a second part (e.g., 615)(different from the first part) of the digital viewfinder (e.g., 614)does not have a simulated bokeh effect. Thus, in some examples, thedigital viewfinder (e.g., 614) mimics an optical bokeh effect commonlyseen in viewfinders of (and images captured with) SLR cameras.

In accordance with some embodiments, at block 730, the simulated opticaleffect is applied differently to different portions of the preview inthe digital viewfinder (e.g., 614 of FIG. 6K). In some embodiments, thebokeh effect is applied differently to different portions of the previewbased on (or as a function of) the distance from the electronic device(e.g., 600) to objects in the different portions of the preview. Forexample, a first portion (e.g., 651 of FIG. 6K) of the preview willappear to have (or has) a first degree of blurring and a second portion(e.g., 652 of FIG. 6K) of the preview (that represents an object that isfurther from the electronic device (e.g., 600) than represented by thefirst portion) will appear to have (or has) a second degree of blurringthat is more intense than the first degree of blurring. Thus, in someexamples, a preview of a scene with varying depths will have varyingblur intensities (e.g., degrees of blurring) throughout the preview. Insome examples, while the electronic viewfinder exhibits portions withvarying blur intensities, a picture captured by the electronic device inresponse to detecting activation of camera shutter affordance 617 willalso exhibit corresponding varying blur intensities.

In accordance with some embodiments, a first portion (e.g., 651 of FIG.6K) of the preview depicts a first object (e.g., object represented by651), wherein the first object is at a first distance from theelectronic device (e.g., 600). Additionally, a second portion (e.g., 652of FIG. 6K) of the preview depicts a second object (e.g., objectrepresented by 652), wherein the second object is a second distance fromthe electronic device (e.g., 600). In some embodiments, the electronicdevice (e.g., 600) applying the simulated optical effect to the previewincludes applying the simulated optical effect to the first portion(e.g., 651) with a first magnitude and applying the simulated opticaleffect to the second portion (e.g., 652) with a second magnitude that isdifferent from (e.g., greater than) the first magnitude. Thus, in someexamples, varying intensities of the simulated optical effect areapplied to different portions of the preview in the digital viewfinder(e.g., 614), which indicates the distance to the objects to a viewer ofthe preview.

In accordance with some embodiments, the first camera (e.g., 602) has afirst field of view and the second camera (e.g., 604) has a second fieldof view, wherein the first field of view and the second field of viewoverlap. In some examples, the first camera (e.g., 602) and the secondcamera (e.g., 604) are spaced apart so that a parallax between imagescaptured by the camera is used (e.g., but the electronic device) todetermine depths for objects (e.g., 611A and 611B of FIG. 6B)represented by different portions of the digital viewfinder (e.g., 614).In some embodiments, the first camera (e.g., 602) and the second camera(e.g., 604) are located on a surface of the electronic device (e.g.,600) and the optical axes of the cameras are arranged such that they areparallel. In some examples, the first camera (e.g., 602) and the secondcamera (e.g., 604) capture overlapping fields of view, for example, atleast 50% overlapping, at least 90% overlapping, or more. In someexamples, the first camera (e.g., 602) has a wider field of view thanthe second camera (e.g., 604). In some examples, the second camera(e.g., 604) has a wider field of view than the first camera (e.g., 602).When a wide-angle camera (e.g., a camera with a wide-angle lens) has awider field of view than a telephoto camera (e.g., a camera with atelephoto lens), at a 1× magnification of the wide-angle camera objectsappear further away than at a 1× magnification of the telephoto camera.If the wide-angle camera and the telephoto camera have overlappingfields of view such that the field of view of the telephoto camera isapproximately centered on the field of view of the wide angle camera, animage captured with the telephoto camera at a 1× magnification levelwill, in some circumstances (e.g., where the subject of the image is atleast 1 meter away), appear to be an optical zoom of a correspondingimage captured with the wide-angle camera at a 1× magnification level.

In accordance with some embodiments, the electronic device (e.g., 600)generates a depth map based on data received from the first camera(e.g., 602) and the second camera (e.g., 604) and the simulated opticaleffect is based on the depth map. In some examples, the electronicdevice (e.g., 600) uses images captured by the first camera (e.g., 602)and the second camera (e.g., 604) to generate the depth map by using aparallax effect where the observed difference in position of an objectfrom two different points of view (e.g., the two cameras) is greater forobjects that are closer to the points of view and less for objects thatare further from the points of view. In some examples, the depth mapincludes information indicating distances from the electronic device(e.g., 600) to various elements (e.g., pixels, objects, portions)depicted in the digital viewfinder (e.g., 614) (e.g., based on theoverlapping fields of view of the first camera (e.g., 602) and thesecond camera (e.g., 604)).

In accordance with some embodiments, the electronic device (e.g., 600)automatically (e.g., without user intervention, without user input)determines a distance to the subject (e.g., 615). For example, theelectronic device (e.g., 600) repeatedly (or continuously) tracks thesubject (e.g., 615) and determines the distance to the subject (e.g.,615). In some examples, the determination of the distance to the subjectis based on a depth map generated based on a parallax effect. In someexamples, the determination of the distance to the subject is based on afocus distance of either (or both) the first camera (e.g., 602) or thesecond camera (e.g., 604). In some examples, applying the simulatedoptical effect includes applying a blur or bokeh effect to backgroundobjects depicted in the electronic viewfinder and not applying the bluror bokeh effect to the subject depicted in the electronic viewfinder.

In accordance with some embodiments, at block 708, a second condition ofthe set of one or more conditions is met when a focus distance of thefirst camera (e.g., 602) (or the second camera (e.g., 604)) exceeds aminimum distance threshold (e.g., 8 feet). Thus, in some examples, theelectronic device applies the simulated optical effect based on thefirst camera (e.g., 602) focusing on a subject (e.g., 615) that is nottoo close to the electronic device (e.g., 600).

In accordance with some embodiments, at block 710, a third condition ofthe set of one or more conditions is met when a focus distance of thefirst camera (or the second camera (e.g., 604)) does not exceed amaximum distance threshold (e.g., 2.5 meters). Thus, in some examples,the simulated optical effect is applied based on the first camera (e.g.,602) focusing on a subject (e.g., 615) that is not too far from theelectronic device (e.g., 600).

In accordance with some embodiments, at block 712, a fourth condition ofthe set of one or more conditions is met when the subject (e.g., 615) isdetected beyond a predetermined minimum distance from the device. Thus,in some examples, the simulated optical effect is applied based on thesubject (e.g., 615) that not being too close to the electronic device(e.g., 600).

In accordance with some embodiments, at block 714, a fifth condition ofthe set of one or more conditions is met when an amount of detectedlight (e.g., corresponding to the darkness 660) (e.g., at the firstcamera 602, at the second camera 604) exceeds a minimum light threshold(e.g., 100 lux, 200 lux, 300 lux, 400 lux, 500 lux, 600 lux, 700 lux, orsome other reasonable threshold value determined based on thecapabilities of the camera(s) to function in low light environments).Thus, in some examples, the simulated optical effect is applied based onthe amount of light detected. In some examples, the electronic device(e.g., 600) encourages the user to improve light conditions by notapplying the simulated optical effect when light conditions are notoptimal.

In accordance with some embodiments, at block 716, a sixth condition ofthe set of one or more conditions is met when an amount of detectedlight (e.g., at the first camera 602, at the second camera 604) does notexceed a maximum light threshold (e.g., 1000 lux, 2000 lux, 3000 lux, orsome other reasonable threshold value determined based on thecapabilities of the camera(s) to function in high light environments).In some examples, the electronic device (e.g., 600) encourages the userto improve light conditions by not applying the simulated optical effectwhen light conditions are not optimal.

In accordance with some embodiments, the determination of whether theset of one of more conditions is met is based on data from the firstcamera (e.g., 602). In some examples, data from the second camera (e.g.,604) is not used to determine whether the set of one or more conditionshave been met, which conserves battery power. In some examples, datafrom both the first camera (e.g., 602) and the second camera (e.g., 604)are used to determine whether the set of one or more conditions havebeen met, which provides more precise metrics.

In accordance with some embodiments, the determination of whether theset of one of more conditions is met is based on data from the secondcamera (e.g., 604). In some examples, data from the first camera (e.g.,602) is not used to determine whether the set of one or more conditionshave been met. In some examples, data from both the first camera (e.g.,602) and the second camera (e.g., 604) are used to determine whether theset of one or more conditions have been met.

In accordance with some embodiments, at block 724, in accordance withthe determination that the set of one or more conditions are not met:displaying, on the display (e.g., 612), a graphical indication (e.g.,642) of a condition that is not met. In some examples, the electronicdevice (e.g., 600) does not detect a subject (e.g., 615) (e.g., focus is10 m or more) and instructs the user (e.g., using the graphicalindication (e.g., 642)) to place a subject (e.g., 615) within anacceptable distance (e.g., within 8 feet and 2.5 m).

In accordance with some embodiments, the electronic device (e.g., 600)detects a subject (e.g., 615), but the subject (e.g., 615) is too faraway (e.g., focus is between 10 m and 2.5 m), and the electronic device(e.g., 600) instructs the user (e.g., using the graphical indication 642of FIG. 6G) to move closer to camera (e.g., to within 8 feet). In someexamples, the electronic device (e.g., 600) determines an amount oflight is too low (e.g., 400 lux or less), and instructs the user (e.g.,using the graphical indication 642 of FIG. 6H) to provide more light. Insome examples, an affordance is displayed in the viewfinder to allow auser to disable or enable such instructions (e.g., based on detectingactivation of the affordance). In some examples, in accordance with thedetermination that the set of one or more conditions are met, theelectronic device (e.g., 600) forgoes displaying, on the display (e.g.,612), the graphical indication (e.g., 641) instructing the user. Thus,in some examples, the electronic device (e.g., 600) does not instructthe user when user action is not helpful for applying the simulatedoptical effect (e.g., 680). Thus, the electronic device, by providingthe user with a visual indication (e.g., using graphical indication 642)that a condition has automatically been determined to not have been met,prompts the user to take actions such that the condition is met.

In accordance with some embodiments, in response to detecting thesubject (e.g., 615) (e.g., within or outside the appropriate distance),the electronic device (e.g., 600) displays, on the digital viewfinder onthe display (e.g., 612), one or more visual markers (e.g., 636) (e.g., avisual boundary) that identify the subject (e.g., 615). A first visualcharacteristic (e.g., color of visual markers, size of visual markers,location of visual markers, distance between visual markers) of the oneor more visual markers (e.g., 636) is based on whether the set of one ormore conditions is met. In some examples, the one or more visual markers(e.g., 636) is a bounding box. In some examples, in accordance with (orin response to) the determination that the set of one or more conditionsis met, the electronic device (e.g., 600) changes the visualcharacteristic of the one or more visual markers (e.g., 636) to indicateto the user that the set of one or more conditions is met. Thus, theelectronic device, by changing the visual characteristic of the one ormore visual markers 636, informs the user that the electronic device hasautomatically detected that the set of one or more conditions has beenmet and prompts the user to capture an image (with the applied simulatedoptical effect), as appropriate.

In accordance with some embodiments, changing the visual indicationincludes animating the one or more visual markers (e.g., 636) (e.g., abounding box) such that a visual characteristic of the one or morevisual markers (e.g., 636, 636E, and 636F) changes (e.g., repeatedly, aplurality of times), such as repeatedly changing location, size, and/orcolor. Thus, in some examples, the electronic device (e.g., 600)notifies the user whether the set of one or more conditions is met.

In accordance with some embodiments, in accordance with thedetermination that the set of one or more conditions is met, theelectronic device (e.g., 600) changes the first visual characteristic(e.g., color of visual markers, size of visual markers, location ofvisual markers, distance between visual markers) of the one or morevisual markers (e.g., 636) (e.g., visual boundary). Thus, in someexamples, the change in the visual characteristic indicates to the userthat the set of one or more conditions is met. In some examples, inaccordance with a subsequent determination that the set of one or moreconditions is no longer met (after the set of one or more conditions waspreviously met), the electronic device (e.g., 600) changes back thefirst visual characteristic of the one or more visual markers (e.g.,636). Thus, in some examples, the electronic device (e.g., 600) notifiesthe user whether the set of one or more conditions is met.

In accordance with some embodiments, in accordance with detecting thesubject (e.g., 615) (e.g., within or outside the appropriate distance),the electronic device (e.g., 600) displays, in the digital viewfinder(e.g., 614) on the display (e.g., 612), one or more visual markers(e.g., 636) (e.g., a visual boundary) identifying the subject (e.g.,615). A second characteristic (e.g., different from the firstcharacteristic) of the one or more visual markers (e.g., 636) is basedon a characteristic (e.g., physical characteristic, size of the subject615, distance to the subject 615, location of the subject 615). Thus, insome examples, the electronic device (e.g., 600) indicates to the userwhich subject (e.g., 615) is being considered for satisfying the set ofone or more conditions.

In accordance with some embodiments, in accordance with failing todetect the subject (e.g., 615), the electronic device (e.g., 600)displays, in the digital viewfinder (e.g., 614) on the display (e.g.,612), one or more visual markers (e.g., 636 at FIG. 6F) (e.g., a visualboundary) that are centered in the digital viewfinder (e.g., 614). Insome examples, in accordance with detecting no subjects, the electronicdevice (e.g., 600) displays in the digital viewfinder (e.g., 614) on thedisplay (e.g., 612), one or more visual markers (e.g., 636 at FIG. 6F)(e.g., a visual boundary) that is centered in the digital viewfinder(e.g., 614).

In accordance with some embodiments, in accordance with detecting (e.g.,using the first camera 602, the second camera 604) a plurality ofsubjects, the electronic device (e.g., 600) displays, in the digitalviewfinder (e.g., 614) on the display (e.g., 612), a plurality of one ormore visual markers (e.g., 636A-636D at FIG. 6N) (e.g., visualboundaries) corresponding to the plurality of subjects. Thus, in someexamples, the electronic device (e.g., 600) notifies the user whichsubjects are being tracked (and/or considered when determining whetherthe set of one or more conditions have been met).

In accordance with some embodiments, in accordance with applying thesimulated optical effect (e.g., a bokeh simulated optical effect) to thepreview displayed in the digital viewfinder (e.g., 614), the electronicdevice (e.g., 600) displays, (e.g., in the digital viewfinder 614) onthe display (e.g., 612), a graphical indication (e.g., 675) (e.g., textincluding “Depth Effect”) that the simulated optical effect is beingapplied to the preview displayed in the digital viewfinder (e.g., 614).Thus, the electronic device, by providing the user with a visualindication (e.g., indication 675) that the set of one or more conditionshas automatically been determined to have been met, prompts the user tocapture an image (with the applied simulated optical effect), asappropriate. In accordance with displaying the preview in the digitalviewfinder (e.g., 614) without applying the simulated optical effect(e.g., 680), the electronic device (e.g., 600) forgoes displaying,(e.g., in the digital viewfinder 614) on the display (e.g., 612), thegraphical indication (e.g., 675) (e.g., text including “Depth Effect”)that the simulated optical effect is being applied to the previewdisplayed in the digital viewfinder (e.g., 614). Thus, in some examples,the electronic device (e.g., 600) notifies the user whether the set ofone or more conditions have been met or have not been met. Thus, theelectronic device, by providing the user with a visual indication thatthe set of one or more conditions has automatically been determined tonot have been met (e.g., not displaying indication 675), prompts theuser to take actions such that the set of one or more conditions is metbefore taking a picture or recording a video.

In accordance with some embodiments, in accordance with thedetermination that the set of one or more conditions is not met (and inresponse to a user request), the electronic device (e.g., 600) capturesthe image (e.g., based on dated from the first camera 602 and not basedon the second camera 604, based on data from the second camera 604 andnot based on the first camera 602) without the simulated optical effect.In some examples, the user activates a shutter affordance (e.g., 617)that is displayed on the display (e.g., 612) while the set of one ormore conditions is not met, and, in response, the electronic device(e.g., 600) captures (e.g., stores in memory) an image using data fromthe first camera (e.g., 602) (or the second camera (e.g., 604)) withoutapplying the simulated optical effect to the data. Thus the electronicdevice, by not applying the simulated optical effect to images capturedwhen the set of one or more conditions is not met, informs the user asto the nature of the image data that will be captured and stored, inresponse to further user input (e.g., an image capture request).

In accordance with some embodiments, in accordance with thedetermination that the set of one or more conditions is met (and inresponse to a user request), the electronic device (e.g., 600) capturesthe image (e.g., based on dated from the first camera 602 and the secondcamera 604) with the simulated optical effect (e.g., 680). In someexamples, the user activates a shutter affordance that is displayed onthe display (e.g., 612) while the set of one or more conditions is met,and, in response, the electronic device (e.g., 600) captures (e.g.,stores in memory) an image using data from the first camera (e.g., 602)(and/or the second camera (e.g., 604)), wherein the simulated opticaleffect is applied to the data.

In accordance with some embodiments, while the preview is displayed inthe digital viewfinder (e.g., 614) without applying the simulatedoptical effect, the electronic device (e.g., 600) detects a change inthe scene in front of the cameras (e.g., due to movement of the camera,movement of objects/people in the scene, and/or a change in lighting inthe scene). In response to detecting the change in the scene: inaccordance with a determination that the change in the scene has causedthe set of one or more conditions to be met (e.g., focus distance is 8feet or more, focus distance is within 8 feet and 2.5 m, light is 400lux or more), the electronic device (e.g., 600) applies the simulatedoptical effect (e.g., a bokeh simulated optical effect) to the previewdisplayed in the digital viewfinder (e.g., 614). Thus, the electronicdevice, by updating the digital viewfinder to apply the simulatedoptical effect, informs the user that the set of one or more conditionshas been met and informs the user as to what a captured image will look(e.g., live or near-live), thereby prompting the user to capture animage (with the applied simulated optical effect), as appropriate. Inaccordance with a determination that the change in the scene has notcaused the set of one or more conditions (e.g., focus distance is 8 feetor more, focus distance is within 8 feet and 2.5 m, light is 400 lux ormore) to be met, the electronic device (e.g., 600) maintains display ofthe preview in the digital viewfinder (e.g., 614) without applying thesimulated optical effect (e.g., a bokeh simulated optical effect,simulated color filter, simulated gamma adjustment).

Note that details of the processes described above with respect tomethod 700 (e.g., FIGS. 7A-7B) are also applicable in an analogousmanner to the methods described below. For example, methods 900, 1100,1300, 1900, 2100, and 2300 optionally include one or more of thecharacteristics of the various methods described above with reference tomethod 700. For example, the electronic viewfinder 614 in method 700 isanalogous to the electronic viewfinder in methods 900, 1100, 1300, 1900,2100, and 2300. For brevity, these details are not repeated below.

FIGS. 8A-8H illustrate exemplary devices and user interfaces formanaging camera effects. The user interfaces in these figures are usedto illustrate processes described below, including the processes in FIG.9.

FIG. 8A illustrates an electronic device 800 with a first camera 802 anda second camera 804 (e.g., on the rear of the electronic device 800). Insome examples, the first camera 802 and the second camera 804 havefixed, but different, focal lengths. In some examples, the focal length,field of view, and/or optical magnification properties of the opticalsystem is fixed for each of the cameras. In some embodiments, inaddition to having different fixed focal lengths, the cameras (e.g.,802, 804) have different fixed fields of view and different fixedoptical magnification properties.

In some embodiments, the first camera 802 has a first field of view andthe second camera 804 has a second field of view, wherein the firstfield of view and the second field of view overlap. In some examples,the first camera 802 and the second camera 804 are spaced apart so thata parallax between images captured by the camera (e.g., 802 and 804) isused to determine depths for objects represented by different portionsof the digital viewfinder. In some embodiments, the first camera 802 andthe second camera 804 are located on a surface of the electronic device800 and the optical axes of the cameras (e.g., 802 and 804) are arrangedsuch that they are parallel. In some examples, the first camera 802 andthe second camera 804 capture overlapping fields of view, for example,at least 50% overlapping, at least 90% overlapping, or more. In someexamples, the first camera 802 has a wider field of view than the secondcamera 804. In some examples, the second camera 804 has a wider field ofview than the first camera 802. When a wide-angle camera (e.g., a camerawith a wide-angle lens) has a wider field of view than a telephotocamera (e.g., a camera with a telephoto lens), at a 1× magnification ofthe wide-angle camera objects appear further away than at a 1×magnification of the telephoto camera. If the wide-angle camera and thetelephoto camera have overlapping fields of view such that the field ofview of the telephoto camera is approximately centered on the field ofview of the wide angle camera, an image captured with the telephotocamera at a 1× magnification level will, in some circumstances (e.g.,where the subject of the image is at least 1 meter away), appear to bean optical zoom of a corresponding image captured with the wide-anglecamera at a 1× magnification level.

As illustrated in FIG. 8B, the electronic device concurrently displays,on the display 812, a user interface 814 for capturing photos based ondata received from the first camera 802 that includes displaying adigital viewfinder 814A with a first magnification (e.g., 1×) (e.g., alive or near-live preview image, not based on the second camera), and anaffordance (e.g., icon, textual representation indicating themagnification level) (e.g., 816) for modifying the magnification ofphotos captured by the device using one or more of the first 802 andsecond cameras 804. In some examples, the magnification is 1×, and thedigital viewfinder 814A displays images corresponding to a respectivecamera without applying a digital zoom. In some examples, the userinterface for capturing photos based on data received from the firstcamera does not use data received from the second camera for capturingphotos.

The electronic device detects activation (e.g., based on detecting tapgesture 818) of the affordance (e.g., 816). In some examples, detectingactivation of the affordance includes detecting a tap gesture 818 at alocation on a touch sensitive surface of the electronic device 800corresponding to a location of the affordance.

As illustrated in FIG. 8C, in response to detecting activation of theaffordance (e.g., 818), the electronic device 800 ceases to display, onthe display 812, the user interface 814 for capturing photos based ondata received from the first camera 802, and the electronic device 800displays, on the display 812, a user interface 820 for capturing photosbased on data received from the second camera 804 that includesdisplaying a digital viewfinder 820A with a second magnification (e.g.,2×) that is greater than the first magnification. In some examples, theuser interface for capturing photos based on data received from thesecond camera 804 does not use data received from the first camera 802for capturing photos. Thus, in some examples, activation of theaffordance 818 results in the electronic device replacing the digitalviewfinder 814A (based on the first camera) with the digital viewfinder820A (based on the second camera).

In some embodiments, the digital viewfinder 820A of the user interfacefor capturing photos based on the second camera 804 fully replaces thedigital viewfinder 814A of the user interface for capturing photos basedon the first camera 802.

In some embodiments, the electronic device provides a zoom controlmechanism to allow a user to zoom in and out. As illustrated in FIG. 8D,in some embodiments, the electronic device detects a user input 840(e.g., a pinch gesture, a drag gesture on an affordance (e.g.,affordance 816), or a swipe input in a region surrounding theaffordance) in the digital viewfinder (e.g., 814A, 820A). In someexamples, the electronic device 800 includes a touch-sensitive surfaceand the user input is received at a location on the touch-sensitivesurface corresponding to the digital viewfinder (e.g., 814A, 820A).Thus, the electronic device is said to detect the user input 840 in thedigital viewfinder (e.g., 814A, 820A). As illustrated in FIG. 8E, theelectronic device, in response to detecting the user input 840, displays(e.g., concurrently with the digital viewfinder), on the display 812, azoom control 850 (e.g., slider) (e.g., concurrently with the affordance816) and, in some embodiments, performs a zoom of the digital viewfinder(e.g., 814A, 820A) in accordance with the user input 840. In someembodiments, as illustrated in FIG. 8D, the continuous zoom control 850is not displayed, on the display 812, prior to detecting the user input840. Thus, in some embodiments, the electronic device provides the userwith an additional mechanism (e.g., a continuous zoom control) forzooming the digital viewfinder in response to detecting a gesture forzooming.

In some embodiments, the electronic device displays the zoom control inresponse to detecting a pinch gesture. In some examples, as illustratedin FIG. 8F, the user input corresponds to a pinch (or de-pinch) gesture(e.g., 860) in the digital viewfinder (e.g., 814A, 820A). In someexamples, also as illustrated in FIG. 8G, electronic device 800, inresponse to the pinch gesture (e.g., 860), performs a zoom of thedigital viewfinder (e.g., 814A, 820A) and also displays continuous zoomcontrol 850.

In some embodiments, the electronic device 800 displays the zoom control850 in response to detecting a drag gesture. In some examples, the userinput corresponds to a drag gesture in the digital viewfinder (e.g.,814A, 820A). In some examples, the electronic device 800 includes atouch-sensitive surface, and wherein the user input is a drag gesture ata location on the touch-sensitive surface corresponding to theaffordance. Thus, in some examples, the electronic device 800 detectsuser input corresponding to dragging the affordance (e.g., 816, the1×/2× indicator), and in response, displays the zoom control (e.g.,concurrently with the affordance 816).

In some embodiments, the electronic device 800 displays the zoom controlin response to detecting a swipe gesture. In some embodiments, the userinput corresponds to a swipe gesture in the digital viewfinder (e.g.,814A, 820A). In some examples, the electronic device includes atouch-sensitive surface, and wherein the user input is a swipe gestureat a location on the touch-sensitive surface corresponding to thedigital viewfinder. In some examples, the electronic device detects userinput corresponding to a swipe gesture on the digital viewfinder, and inresponse, displays the zoom control (e.g., concurrently with theaffordance 816).

In some embodiments, as illustrated in FIG. 8H, the zoom control 850 isa slider. In some embodiments, the zoom control 850 includes a pluralityof positions corresponding to a plurality of magnification levels (e.g.,862 and 864).

In some embodiments, as illustrated in FIG. 8H, the zoom control 850includes a plurality of locations corresponding to a plurality ofmagnification levels (e.g., 862 and 864), and wherein a first location862 of the plurality of locations corresponds to a first opticalmagnification level (e.g., based on a first camera without any digitalzoom) and a second location 864 of the plurality of locationscorresponds to a second optical magnification level that is differentfrom the first optical magnification level (e.g., based on a secondcamera without any digital zoom).

In some embodiments, the zoom control acts as a joystick-like control.In some examples, affordance 816 acts as a joystick-like control. Insome examples, the electronic device 800 detects a gesture correspondingto the zoom control (e.g., at a location on a touch-sensitive surfacecorresponding to the zoom control) or the affordance 816 (e.g., at alocation on a touch-sensitive surface corresponding to the affordance816), the gesture having a direction and a length. The electronic device800 in response to detecting the gesture and in accordance with thedirection being a first direction, performs a zoom-out of the digitalviewfinder (e.g., 814A, 820A) (e.g., with increasing speed) at a speedbased on the magnitude of the gesture (e.g., a distance moved fromparticular location on the touch-sensitive surface, or a distance movedfrom an initial point of contact on the touch-sensitive surface). Theelectronic device 800, in response to detecting the gesture and inaccordance with the direction being a second direction different fromthe first direction, performs a zoom-in of the digital viewfinder (e.g.,with increasing speed) at a speed based on the magnitude of the gesture.In some embodiments, the zoom control acts as a joystick-like controlwherein detecting a drag gesture in one direction zooms out theviewfinder with increasing speed based on a magnitude of the gesture andwherein dragging in another direction (e.g., opposite to the firstdirection) zooms in the viewfinder with increasing speed based on amagnitude of the gesture.

In some embodiments, the affordance 816 for modifying the magnificationis displayed in accordance with a determination that the electronicdevice includes a plurality of cameras (e.g., 802 and 804) withoverlapping fields of view. In some examples, the cameras (e.g., 802 and804) are arranged such that the cameras have parallel optical axes orsubstantially parallel optical axes. In some examples, in accordancewith a determination that the electronic device does not include aplurality of cameras with overlapping fields of view, the electronicdevice forgoes displaying the affordance 816 for modifying themagnification.

In some embodiments, the electronic device 800 detects a secondactivation of the affordance 816 for modifying the magnification. Insome examples, detecting activation of the affordance includes detectinga tap gesture at a location on a touch sensitive surface correspondingto a location of the affordance. The electronic device, in response todetecting the second activation of the affordance 816 for modifying themagnification ceases to display, on the display 812, the user interface820 for capturing photos based on data received from the second camera802, and the electronic device displays, on the display 812, the userinterface 814 for capturing photos based on data received from the firstcamera 802 that includes displaying the digital viewfinder 814A with thefirst magnification.

In some embodiments, the zoom control 850 fades out (e.g., visually, onthe display) in response to device 800 detecting an input lift-offsignal associated with the user input in the digital viewfinder (e.g.,814A, 820A). In some embodiments, the displayed affordance 816 formodifying the magnification does not fade out in response detecting theinput lift-off signal associated with the user input in the digitalviewfinder (e.g., 814A, 820A). In some examples, the electronic devicedetermines that the user input has ended, such as by detecting alift-off of a touch performed on a touch-sensitive surface, and inresponse fades out the display of the zoom control 850.

In some embodiments, displaying (e.g., concurrently with the digitalviewfinder), on the display, the zoom control 850 includes replacingdisplay of the affordance 816 for modifying the magnification withdisplay of the zoom control.

FIG. 9 is a flow diagram illustrating a method for managing cameraeffects, in accordance with some embodiments. Method 900 is performed atan electronic device (e.g., 100, 300, 500, 600, 800) with a firstcamera, a second camera, and a display. Some operations in method 900are, optionally, combined, the order of some operations is, optionally,changed, and some operations are, optionally, omitted.

At blocks 902-906, the electronic device (e.g., 800) concurrentlydisplays, on the display (e.g., 812): a user interface (e.g., 814) forcapturing photos based on data received from the first camera (e.g.,802) that includes displaying a digital viewfinder (e.g., 814A) with afirst magnification (e.g., a live or near-live preview image, not basedon the second camera (e.g., 804)). The electronic device (e.g., 800)further displays an affordance (e.g., 816) for modifying themagnification of photos captured by the device using one or more of thefirst and second cameras (e.g., 802 and 804) (e.g., icon, textualrepresentation indicating the magnification level). In some examples,the magnification is 1×, and the digital viewfinder (e.g., 814A)displays images corresponding to a respective camera without digitalzoom.

At block 908, the electronic device (e.g., 800) detects activation ofthe affordance (e.g., 816). In some examples, detecting activation ofthe affordance (e.g., 816) includes detecting a tap gesture (e.g., 818)at a location on a touch sensitive surface corresponding to a locationof the affordance (e.g., 816).

At block 910, in response to detecting activation of the affordance(e.g., 816): the electronic device (e.g., 800) ceases, at block 912, todisplay, on the display (e.g., 812), the user interface (e.g., 814) forcapturing photos based on data received from the first camera (e.g.,802), and, at block 914, the electronic device (e.g., 800) displays, onthe display (e.g., 812), a user interface (e.g., 820) for capturingphotos based on data received from the second camera (e.g., 804) thatincludes displaying a digital viewfinder (e.g., 820A) with a secondmagnification that is greater than the first magnification. Thus, insome examples, by transitioning user interfaces (of the first camera tothe second camera) in response to detecting activation of the affordance(e.g., 816), the electronic device informs the user of the internalstate of the electronic device (e.g., which camera will be used when apicture is taken) and also informs a user of what a captured image willlook like (e.g., magnification, quality, field of view) before the imageis captured. In some examples, the user interface (e.g., 814) forcapturing photos based on data received from the first camera (e.g.,802) does not use data received from the second camera (e.g., 804) forcapturing photos.

In accordance with some embodiments, the user interface (e.g., 820) forcapturing photos based on data received from the second camera (e.g.,804) does not use data received from the first camera (e.g., 802) forcapturing photos. In some examples, the digital viewfinder (e.g., 820A)of the user interface (e.g., 820) for capturing photos based on thesecond camera (e.g., 804) fully replaces the digital viewfinder (e.g.,814A) of the user interface (e.g., 814) for capturing photos based onthe first camera (e.g., 802). In some examples, the first camera (e.g.,802) and the second camera (e.g., 804) have fixed, but different, focallengths. In some examples, the focal length, field of view, and opticalzoom properties of the optical system is fixed for each of the cameras,but the fixed focal length is different between the first camera (e.g.,802) and the second camera (e.g., 804).

In accordance with some embodiments, the electronic device (e.g., 800)detects a user input (e.g., 818, 840, 860) in the digital viewfinder(e.g., 814A, 820A) (e.g., a tap gesture, a pinch gesture, a drag gestureof an affordance 816, or a swipe input in a region surrounding theaffordance). In response to detecting the user input: the electronicdevice (e.g., 800) displays (e.g., concurrently with the digitalviewfinder), on the display (e.g., 812), a zoom control (e.g., 850)(e.g., a slider). Thus, by displaying a zoom control (e.g., 850) inresponse to the user input, the electronic device provides the user withan additional (e.g., more precise) mechanism (e.g., a continuous zoomcontrol) for zooming the digital viewfinder. In some embodiments, thezoom control (e.g., 850) is not displayed, on the display (e.g., 812 atFIG. 8B-8D), prior to detecting the user input. In some embodiments, theelectronic device (e.g., 800) performs a zoom of the digital viewfinder(e.g., 814A, 820A) in accordance with the user input (e.g., 818, 840,860). Thus, in some examples, the electronic device (e.g., 800) providesthe user with an additional mechanism (e.g., the zoom control 850) forzooming the digital viewfinder (e.g., 814A, 820A). In some examples, theelectronic device (e.g., 800) includes a touch-sensitive surface and theuser input (e.g., 818, 840, 860) is received at a location on thetouch-sensitive surface corresponding to the digital viewfinder (e.g.,814A, 820A). Thus, the electronic device (e.g., 800) is said to detectthe user input in the digital viewfinder (e.g., 814A, 820A).

In accordance with some embodiments, the user input corresponds to apinch gesture (e.g., 860) in the digital viewfinder (e.g., 814A, 820A).In some examples, electronic device (e.g., 800) includes atouch-sensitive surface, and the user input is a pinch gesture (e.g.,860) at a location on the touch-sensitive surface corresponding to thedigital viewfinder (e.g., 814A, 820A).

In accordance with some embodiments, the user input corresponds to adrag gesture in the digital viewfinder (e.g., 814A, 820A). In someexamples, the electronic device (e.g., 800) includes a touch-sensitivesurface, and the user input is a drag gesture at a location on thetouch-sensitive surface corresponding to the affordance (e.g., 816). Insome examples, the electronic device (e.g., 800) detects user inputcorresponding to dragging the affordance (e.g., 816) (e.g., the 1×/2×indicator), and in response, the electronic device (e.g., 800) displaysthe zoom control (e.g., 850). Thus, by displaying a zoom control (e.g.,850) in response to the user input, the electronic device provides theuser with an additional (e.g., more precise) mechanism (e.g., acontinuous zoom control) for zooming the digital viewfinder.

In accordance with some embodiments, the user input corresponds to aswipe gesture in the digital viewfinder (e.g., 814A, 820A). In someexamples, the electronic device (e.g., 800) includes a touch-sensitivesurface, and wherein the user input is a swipe gesture at a location onthe touch-sensitive surface corresponding to the digital viewfinder(e.g., 814A, 820A). In some examples, the electronic device (e.g., 800)detects user input corresponding to a swipe gesture on the digitalviewfinder (e.g., 814A, 820A), and in response, displays the zoomcontrol (e.g., 850).

In accordance with some embodiments, the zoom control (e.g., 850)includes a zoom indicator affordance (e.g., as described with referenceto 1040 of FIGS. 10A-10T). In some examples, the zoom control (e.g.,850) includes a plurality of positions corresponding to a plurality ofmagnification levels.

In accordance with some embodiments, the zoom control (e.g., 850)includes a plurality of locations (e.g., 862 and 864) corresponding to aplurality of magnification levels, and wherein a first location (e.g.,862) of the plurality of locations corresponds to a first opticalmagnification level (e.g., based on a first camera (e.g., 802) withoutany digital zoom) and a second location (e.g., 864) of the plurality oflocations (e.g., 862 and 864) corresponds to a second opticalmagnification level that is different from the first opticalmagnification level (e.g., based on a second camera (e.g., 804) withoutany digital zoom. Thus, by providing a zoom control that includespositions corresponding to two optical levels (e.g., of the tworespective cameras), the electronic device provides an efficientuser-machine interface for transitioning between the two cameras.

In accordance with some embodiments, the electronic device (e.g., 800)detects a gesture (e.g., 818, 840, 860) corresponding to the zoomcontrol (e.g., 850) (e.g., at a location on a touch-sensitive surfacecorresponding to the zoom control (e.g., 850)), the gesture having adirection and a length. In response to detecting the gesturecorresponding to the zoom control (e.g., 850) and in accordance with thedirection being a first direction, the electronic device (e.g., 800)performs a zoom-out of the digital viewfinder (e.g., 814A, 820A) (e.g.,with increasing speed) at a speed based on the magnitude of the gesture(e.g., a distance moved from particular location on the touch-sensitivesurface, or a distance moved from an initial point of contact on thetouch-sensitive surface). In response to detecting the gesturecorresponding to the zoom control (e.g., 850) and in accordance with thedirection being a second direction different from the first direction,the electronic device (e.g., 800) performs a zoom-in of the digitalviewfinder (e.g., 814A, 820A) (e.g., with increasing speed) at a speedbased on the magnitude of the gesture. In some embodiments, the zoomcontrol (e.g., 850) acts as a joystick-like control wherein detecting adrag gesture in one direction zooms out the viewfinder with increasingspeed based on a magnitude of the gesture and wherein dragging inanother direction (e.g., opposite to the first direction) zooms in theviewfinder (e.g., 814A, 820A) with increasing speed based on a magnitudeof the gesture. Thus, by performing zoom operations with varying speedsbased on the magnitudes of the gestures, the electronic device optimizesthe user-machine interface by reducing the number of user inputs (e.g.,to a single gesture) that the user is required to provide in order toinstruct the electronic device to both perform a zoom operation as wellas the speed with which the zoom operation should be performed.

In accordance with some embodiments, the affordance (e.g., 816) formodifying the magnification is displayed in accordance with adetermination that the electronic device (e.g., 800) includes aplurality of cameras with overlapping fields of view. In some examples,the cameras are arranged such that the cameras have parallel opticalaxes. In some examples, in accordance with a determination that theelectronic device (e.g., 800) does not include a plurality of cameraswith overlapping fields of view, the electronic device forgoesdisplaying the affordance (e.g., 816).

In accordance with some embodiments, the electronic device (e.g., 800)detects a second activation of the affordance (e.g., 816) for modifyingthe magnification. In some examples, detecting activation of theaffordance (e.g., 816) includes detecting a tap gesture (e.g., 818) at alocation on a touch sensitive surface corresponding to a location of theaffordance (e.g., 816). In response to detecting the second activationof the affordance (e.g., 816) for modifying the magnification: theelectronic device (e.g., 800) ceases to display, on the display (e.g.,812), the user interface (e.g., 820) for capturing photos based on datareceived from the second camera (e.g., 804), and the electronic device(e.g., 800) displays, on the display (e.g., 812), the user interface(e.g., 814) for capturing photos based on data received from the firstcamera (e.g., 802) that includes displaying the digital viewfinder(e.g., 814A) with the first magnification. Thus, in some examples, bytransitioning user interfaces (of the second camera to the first camera)in response to detecting the second activation of the affordance (e.g.,816), the electronic device informs the user of the internal state ofthe electronic device (e.g., which camera will be used when a picture istaken) and also informs the user of what a captured image will look like(e.g., magnification, quality, field of view) before the image iscaptured.

In accordance with some embodiments, the displayed zoom control (e.g.,850) fades out in response to detecting an input lift-off signalassociated with the user input in the digital viewfinder (e.g., 814A,820A) and wherein the displayed affordance (e.g., 816) for modifying themagnification does not fade out in response detecting the input lift-offsignal associated with the user input in the digital viewfinder (e.g.,814A, 820A). In some examples, the electronic device (e.g., 800)determines that the user input has ended, such as by detecting alift-off of a touch performed on a touch-sensitive surface, and inresponse, the electronic device (e.g., 800) fades out the display of thezoom control (e.g., 850).

In accordance with some embodiments, displaying (e.g., concurrently withthe digital viewfinder 814A, 820A), on the display (e.g., 812) the zoomcontrol (e.g., 850) includes replacing display of the affordance (e.g.,816) for modifying the magnification with display of the zoom control(e.g., 850).

Note that details of the processes described above with respect tomethod 900 (e.g., FIG. 9) are also applicable in an analogous manner tothe methods described below. For example, methods 700, 1100, 1300, 1900,2100, and 2300 optionally include one or more of the characteristics ofthe various methods described above with reference to method 900. Forexample, the electronic viewfinder in method 900 is analogous to theelectronic viewfinder in methods 700, 1100, 1300, 1900, 2100, and 2300.For brevity, these details are not repeated below.

FIGS. 10A-10T illustrate exemplary devices and user interfaces forzooming a digital viewfinder, in accordance with some embodiments. Theuser interfaces in these figures are used to illustrate processesdescribed below, including the processes in FIG. 11.

FIG. 10A illustrates an exemplary electronic device 1000. In someembodiments, the electronic device 1000 includes a first camera 1002 anda second camera 1004 (e.g., on the rear of the electronic device 1000).In some examples, the first camera 1002 and the second camera 1004 havefixed, but different, focal lengths. In some examples, the focal length,field of view, and/or optical magnification properties of the opticalsystem is fixed for each of the cameras, In some embodiments, inaddition to having different fixed focal lengths, the cameras (e.g.,1002, 1004) have different fixed fields of view and different fixedoptical magnification properties.

As illustrated in FIG. 10B, the electronic device 1000 displays, on thedisplay, a digital viewfinder 1014 based on data received from the oneor more cameras (e.g., a live or near-live preview image from eithercamera). In some examples, the digital viewfinder 1014 displays databased only one of the first and second cameras (e.g., 1002 and 1004).

As illustrated in FIGS. 10C-10H, as user performs a drag gesture on azoom indicator affordance 1040 to change the magnification of thedigital viewfinder 1014. The zoom indicator affordance 1040 progresseswith the gesture. In contrast, the magnification of the digitalviewfinder 1014 progresses at a different rate, initially lagging behindthe gesture and later catching up to the gesture. As illustrated inFIGS. 10C-10H, while displaying the digital viewfinder 1014, theelectronic device 1000 detects a gesture 1010 (e.g., a drag gesture on atouch-sensitive surface, a drag gesture at a location corresponding to azoom control 1030) that progresses at a gesture rate 1016, the gesturecorresponding to an instruction to zoom the digital viewfinder 1014 froma first magnification level (e.g., 1×, as illustrated in FIG. 10C,corresponding to location 1022 on the zoom control 1030) to a thirdmagnification level (e.g., 10×, as illustrated in FIG. 10H,corresponding to location 1026 on the zoom control 1030). In response todetecting the gesture, the electronic device 1000 zooms the digitalviewfinder 1014 from the first magnification level (e.g., 1×, asillustrated in FIG. 10C) to a second magnification level (e.g., 3×, asillustrated in FIG. 10E, corresponding to location 1024 on the zoomcontrol 1030) and from the second magnification level (e.g., 3×, asillustrated in FIG. 10E, corresponding to location 1024 on the zoomcontrol 1030) to a third magnification level (e.g., 10×, as illustratedin FIG. 10H, corresponding to location 1026 on the zoom control 1030),wherein during a first portion of the gesture (e.g., the portion of thegesture as it progress in FIGS. 10C to 10D), the electronic device zoomsthe digital viewfinder at a first rate (e.g., an average rate) that isslower than the gesture rate at which the gesture is progressing, andduring a second portion of the gesture (e.g., the portion of the gestureas it progresses in FIGS. 10D through 10H) that occurs after the firstportion of the gesture, the electronic device zooms the digitalviewfinder at a second rate (e.g., an average rate) that is faster thanthe gesture rate at which the gesture is progressing.

In some examples, the electronic device receives a request to record avideo (e.g., detecting a tap gesture at a location corresponding to thecamera shutter affordance 1017) prior to detecting the gesture and, inresponse, the to the request to record the video electronic devicerecords a video to memory, the video recording beginning before thegesture is detected and ending after the gesture ends. In some examples,the recorded video includes zooming that corresponds to the zoomingperformed in the digital viewfinder in response to the gesture. In someexamples, representations of the images displayed in the viewfinder arestored in memory as part of the video, including the zooming performed.In some examples, the size of the digital viewfinder on the display ismaintained while the digital viewfinder is zoomed (e.g., the contentwithin the digital viewfinder is zoomed).

In some embodiments, as described in detail below and as illustrated inFIGS. 10C-10H: (1) during a first portion of the gesture: (a) thegesture progresses from a location 1022 corresponding to 1×magnification to a location 1024 corresponding 3× magnification and (b)the magnification level of the digital viewfinder changes from 1×magnification to 2× magnification; (2) during a second portion of thegesture: (a) the gesture progresses from the location 1024 correspondingto 3× magnification to a location 1026 corresponding 10× magnificationand (b) the magnification level of the digital viewfinder changes from2× magnification to 10× magnification. Thus, (1) during the firstportion of the gesture the magnification level lags behind the gestureand (2) during the second portion of the gesture the magnification levelcatches up to the gesture. In some embodiments, the gradual zooming isperformed even when an input that corresponds to a request to switchbetween discrete zoom levels is received (e.g., a tap on a 1×/2× buttonas described above with respect to method 800).

In some embodiments, during the first portion of the gesture themagnification level lags behind the gesture. In some embodiments, asillustrated in FIGS. 10C-10D, during the first portion of the gesture,the gesture progresses from a first state (e.g., location 1022 on thezoom control 1030) to a second state (e.g., location 1024 on the zoomcontrol 1030), wherein the first state corresponds to the firstmagnification level (e.g., 1×, as illustrated in FIG. 10C, correspondingto location 1022 on the zoom control 1030) (optionally, the first stateof the gesture is a state at which the contact is detected at a locationthat corresponds to a portion of a zoom control 1030 that corresponds tothe first magnification level) and the second state corresponds to thesecond magnification level (e.g., 3×, as illustrated in FIG. 10E,corresponding to location 1024 on the zoom control 1030) that is higherthan the first magnification level (e.g., if the gesture is maintainedat the second state for at least a predetermined period of time themagnification level will come to rest at the second magnification level,optionally, the second state of the gesture is a state at which thecontact is detected at a location that corresponds to a portion of thezoom control (e.g., 1030) that corresponds to the second magnificationlevel), and the electronic device zooms the digital viewfinder from thefirst magnification level (e.g., 1×, as illustrated in FIG. 10C,corresponding to location 1022 on the zoom control 1030) to anintermediate magnification level (e.g., 2×, as illustrated in FIG. 10D,corresponding to location 1028 on the zoom control 1030) that is higherthe first magnification level (e.g., 1×, as illustrated in FIG. 10C,corresponding to location 1022 on the zoom control 1030) and lower thanthe second magnification level (e.g., 3×, as illustrated in FIG. 10E,corresponding to location 1024 on the zoom control 1030) (e.g., themagnification level lags behind the gesture).

In some embodiments, during the second portion of the gesture themagnification level catches up to the gesture. In some embodiments, asillustrated in FIGS. 10D-10H, during the second portion of the gesture,the gesture progresses from the second state (e.g., location 1024 on thezoom control 1030) to a third state (e.g., location 1026 on the zoomcontrol 1030), wherein the third state corresponds to a thirdmagnification level (e.g., 10×, as illustrated in FIG. 10H,corresponding to location 1026 on the zoom control 1030) that is higherthan the second magnification level (e.g., 3×, as illustrated in FIG.10E, corresponding to location 1024 on the zoom control 1030) and theintermediate magnification level (e.g., 2×, as illustrated in FIG. 10D,corresponding to location 1028 on the zoom control 1030) (e.g., if thegesture is maintained at the second state for at least a predeterminedperiod of time the magnification level will come to rest at the secondmagnification level optionally, the third state of the gesture is astate at which the contact is detected at a location that corresponds toa portion of the zoom control (e.g., 1030) that corresponds to the thirdmagnification level) and the electronic device zooms the digitalviewfinder from the intermediate magnification level (e.g., 2×, asillustrated in FIG. 10D, corresponding to location 1028 on the zoomcontrol 1030) that is lower than the second magnification level (e.g.,3×, as illustrated in FIG. 10E, corresponding to location 1024 on thezoom control 1030) to the third magnification level (e.g., 10×, asillustrated in FIG. 10H, corresponding to location 1026 on the zoomcontrol 1030). Thus, in some embodiments, during the second portion ofthe gesture, the magnification level catches up to the gesture, changingfrom the intermediate magnification level to the third magnificationlevel, wherein the intermediate magnification level is lower than thesecond magnification level.

In some embodiments, as illustrated in FIGS. 10C-10F, the first portionof the gesture (e.g., as illustrated in FIGS. 10C-10D) includes movementof one or more contacts (e.g., 1010) on a touch-sensitive surface (e.g.,a drag input or de-pinch input on a touch-sensitive display) and therate at which the first portion of the gesture is progressing is basedon a rate of movement (e.g., 1016) of the one or more contacts (e.g.,1010). The second portion of the gesture includes continued movement ofthe one or more contacts on the touch-sensitive surface (e.g., acontinuation of the drag input, as illustrated in FIGS. 10D-10F, or thede-pinch input the touch-sensitive display) and the rate at which thesecond portion of the gesture is progressing is based on a rate ofmovement (e.g., 1016) of the one or more contacts (e.g., 1010). Duringthe second portion of the gesture, the movement of the one or morecontacts ceases (e.g., as illustrated in FIGS. 10G-10H) while the one ormore contacts (e.g., 1010) continue to be detected on thetouch-sensitive surface and, the electronic device 1000 continues tozoom the digital viewfinder 1014 after the movement of the one or morecontacts (e.g., 1010) has ceased. In some embodiments, the zooming lagsbehind the movement of the contacts for at least a portion of thegesture and then catches up when the movement of the contacts stops.

In some embodiments, continuing to zoom the digital viewfinder after themovement of the one or more contacts (e.g., 1010) has ceased includesgradually decreasing the rate at which the magnification level isincreasing. In some embodiments, the electronic device decreases therate at which the zoom is increasing as the current magnification levelapproaches the third magnification level (e.g., 10×, as illustrated inFIG. 10H) that corresponds to the position (e.g., corresponding tolocation 1026 on the zoom control 1030) at which the one or morecontacts stopped moving.

In some embodiments, zooming the digital viewfinder at a rate that isslower than the gesture rate at which the gesture is progressingincludes gradually increasing the rate at which the magnification levelincreases when the contact (e.g., 1010) moves away from a startingposition (e.g., corresponding to location 1022 on the zoom control 1030)on the touch-sensitive surface. In some embodiments, the magnificationlevel eases into a respective rate of changing the magnification levelthen eases out of the rate of changing the magnification level toprovide a smoother zooming effect.

In some embodiments, as illustrated in FIG. 10B-10I the electronicdevice 1000 concurrently displays, on the display 1012, with the digitalviewfinder 1014, a zoom control 1030 (e.g., an adjustable zoom controlsuch as a zoom slider), wherein a plurality of positions along the zoomcontrol 1030 correspond to a plurality of magnification levels (e.g.,1×, 1.1×, 1.2×, 1.3×, etc.), and a zoom indicator affordance 1040 (e.g.,a draggable circle or square on the zoom slider). In response todetecting the gesture (e.g., contact 1010), the electronic device 100updates display of the zoom indicator affordance 1040 to transition, atthe gesture rate 1016, from a first position (e.g., location 1022 on thezoom control 1030) of the plurality of positions to a second position(e.g., location 1026 on the zoom control 1030) of the plurality ofpositions, wherein the first position corresponds to the firstmagnification level (e.g., 1×, as illustrated in FIG. 10C, correspondingto location 1022 on the zoom control 1030) of the plurality ofmagnification levels and the second position corresponds to the thirdmagnification level (e.g., 10×, as illustrated in FIG. 10H,corresponding to location 1026 on the zoom control 1030) of theplurality of magnification levels. Thus, in some embodiments, theelectronic device enables the user to perform the zoom operation bydragging the zoom indicator affordance 1040 along the zoom control 1030.

In some embodiments, zooming the digital viewfinder from the firstmagnification level (e.g., 1×, as illustrated in FIG. 10C, correspondingto location 1022 on the zoom control 1030) to the third magnificationlevel (e.g., 10×, as illustrated in FIG. 10H, corresponding to location1026 on the zoom control 1030) includes zooming the digital viewfinderwhile smoothing the rate at which the zooming occurs relative to therate at which the gesture progresses, by limiting the rate of the zoomor the rate of change of the rate of the zoom. Thus, the electronicdevice provides a more visually pleasing (e.g., less disorienting) zoomexperience in the viewfinder and for videos recorded to memory (e.g.,where the electronic device is performing a video recording operationwhile the gesture is detected). In some examples, the electronic devicezooms the digital viewfinder while smoothing the rate at which the zoomoccurs by limiting the rate of the zoom (e.g., a max rate of zoom). Insome examples, the electronic device zooms the digital viewfinder whilesmoothing the rate at which the zoom occurs by limiting the rate ofchange of the rate of the zoom. In some examples, the electronic devicezooms the digital viewfinder while smoothing the rate at which the zoomoccurs by limiting both the rate of the zoom and the rate of change ofthe rate of the zoom.

In some embodiments, as illustrated in FIG. 10L-10O during a thirdportion of the gesture that occurs before the first portion of thegesture, zooming the digital viewfinder (e.g., 1014) at a third ratethat corresponds to the gesture rate at which the gesture is progressing(during the third portion of the gesture). Thus, when the gesture isbelow a threshold gesture rate, the zoom rate matches the rate gesture,allowing the user to directly control the zoom speed for videos recordedto memory.

In some embodiments, at a first time during the first portion of thegesture, the electronic device 1000 zooms the digital viewfinder 1014 atthe first rate while a first gesture rate of the gesture exceeds athreshold gesture rate. In some examples, this occurs during the firstportion of the gesture, where the gesture is fast and pulling away fromthe zoom, assuming the first rate is a maximum zoom speed and that thethreshold gesture is the gesture speed that corresponds to the firstrate. In some embodiments, at a second time during the second portion ofthe gesture, the electronic device 1000 zooms the digital viewfinder1014 at the first rate while a second gesture rate of the gesture doesnot exceed the threshold gesture rate. For example, towards end of thesecond portion of the gesture, the gesture has slowed or stopped and thezoom is catching up at the maximum zoom speed. Thus, in some examples,the digital viewfinder 1014 reaches (and tops out at) a maximum zoomrate, which helps to smooth out zooms (e.g., that occur while a video isbeing recorded). Thus, the electronic device provides a more visuallypleasing zoom experience in the viewfinder and for videos recorded tomemory.

In some embodiments, as illustrated in FIG. 10P, subsequent to theelectronic device 1000 detecting the gesture and subsequent to zoomingthe digital viewfinder from the first magnification level to the thirdmagnification level, the electronic device 1000 detects a tap gesture1080 (e.g., a touch gesture) at a location (e.g., 1082) corresponding toa third position of the plurality of positions (e.g., at a location on atouch-sensitive display that corresponds to the third position), whereinthe third position corresponds to a fourth magnification level (e.g.,2×, corresponding to location 1082 on the zoom control) of the pluralityof magnification levels. In response to detecting the tap gesture, theelectronic device zooms the digital viewfinder 1014 from the thirdmagnification level to the fourth magnification level (e.g., 2×), asillustrated in FIG. 10P. In some examples, the zooming is limited to amaximum zoom rate. In some examples, the rate of change of the zoom rateis limited to a maximum zoom-change rate. Thus, the electronic deviceprovides a more visually pleasing zoom experience in the viewfinder andfor videos recorded to memory by limiting zooms that are not smooth.

In some embodiments, as illustrated in FIGS. 10C-10H in response todetecting the gesture, the electronic device displays, on the display, agraphical magnification level indicator 1090 (e.g., including textindicating the current magnification level) that indicates a currentmagnification level. Thus, the electronic device informs the user as tothe current magnification level.

In some embodiments, after the graphical magnification level indictor1090 has been displayed for a predetermined period of time after zoomingof the digital viewfinder has ceased, ceasing to display, on thedisplay, the graphical magnification level indictor. In some examples,the graphical magnification level indicator is displayed while zoomingthe digital viewfinder and for a predetermined period of time afterzooming the digital viewfinder. In some examples, the graphical zoomindicator fades out after the second predetermined amount of time haselapsed.

In some embodiments, as illustrated in FIGS. 10J-10K, after the zoomcontrol 1030 has been displayed for a second predetermined period oftime after zooming of the digital viewfinder has ceased, the electronicdevice 1000 ceases to display, on the display, the zoom control 1030. Insome examples, the zoom control 1030 is only displayed while zooming thedigital viewfinder 1014 and for a predetermined period of time afterzooming the digital viewfinder 1014. In some examples, the zoom controlfades out after the second predetermined amount of time has elapsed.

In some embodiments, the electronic device 1000 displays (e.g.,persistently), on the display, the zoom control 1030 while displayingthe digital viewfinder 1014 (e.g., zoom control is persistent). Thus,the zoom control 1030 is available to the user without the need for theuser to provide additional input.

In some embodiments, the electronic device detects a pinch gesture onthe digital viewfinder 1014. For example, the electronic device includesa touch-sensitive surface and the pinch gesture is detected at alocation corresponding to the digital viewfinder. In response todetecting the pinch gesture, the electronic device zooms the digitalviewfinder at a rate corresponding to a rate at which the pinch gestureis progressing throughout the pinch gesture (e.g., without limiting therate of change of the zoom to smooth the rate at which the zoomingoccurs relative to the rate at which the gesture progresses). Thus, whenthe electronic device detects a pinch gesture corresponding to a zoomoperation, the electronic device does not smooth the rate of the zoom.Thus, zooming that results from detecting the pinching gesture modifiesthe magnification level with direct manipulation such that changes inthe magnification level start when the contacts start moving and endwhen the contacts stop moving.

In some embodiments, as illustrated in FIGS. 10Q and 10R, displaying thezoom control 1030 includes displaying the zoom control vertically on thedisplay. In some examples, the zoom control is a straight line. Thus,the zoom control 1030 is displayed at an orientation that is convenientfor the user to access.

In some embodiments, as illustrated in FIGS. 10P and 10S, displaying thezoom control 1030 includes displaying the zoom control horizontally onthe display. In some examples, the zoom control is a straight line.Thus, the zoom control is displayed at an orientation that is convenientfor the user to access.

In some embodiments, as illustrated in FIG. 10T the plurality ofpositions corresponding to the plurality of magnification levels arepositioned along the zoom control 1092 such that the magnificationlevels are not distributed linearly. In some embodiments, the pluralityof positions corresponding to the plurality of magnification levels arepositioned along the zoom control 1090 such that the magnificationlevels are distributed linearly. The examples illustrated in FIG. 10Tare exemplary and the hashes and magnification levels are provided forexplanatory purposes.

In some embodiments, as illustrated in FIG. 10T, the distance along thezoom control between a location 1094 corresponding to the lowestmagnification level (e.g., 1× magnification) and a location 1098corresponding to a magnification level that is double the lowestmagnification level (e.g., 2× magnification) extends (e.g., 1096) morethan 25% of a total distance (length) of the zoom control and less than45% of the total distance (length) of the zoom control (e.g., 30% of thetotal distance of the zoom control).

In some embodiments, as illustrated in FIG. 10T, locations (e.g., 1093,1095, 1094, 1098) along the zoom control (e.g., 1090, 1092)corresponding to optical magnification levels are visually distinguished(e.g., snap points) from locations (e.g., 1097, 1099) along the zoomcontrol corresponding to non-optical magnification levels. In someexamples, the zoom control (e.g., 1090, 1092) includes markers for the1× and 2× magnification levels, which correspond to optical zooms of afirst camera and a second camera of the electronic device.

In some embodiments, taping at a location that corresponds to an opticalmagnification level transitions the display from the currentmagnification level to the optical magnification level. In someembodiments, the third position of the plurality of positionscorresponds to an optical magnification level. In some embodiments, asmoothed zooming effect, as described above, is used with other zoomcontrols, such as the zoom controls described with reference to method900 and method 1300.

FIG. 11 is a flow diagram illustrating a method for managing cameraeffects, in accordance with some embodiments. Method 1100 is performedat an electronic device (e.g., 100, 300, 500, 600, 800, 1000) with afirst camera, a second camera, and a display. Some operations in method900 are, optionally, combined, the order of some operations are,optionally, changed, and some operations are, optionally, omitted.

At block 1102, the electronic device (e.g., 1000) displays, on thedisplay (e.g., 1012): a digital viewfinder (e.g., 1014) based on datareceived from the one or more cameras (e.g., 1002, 1004) (e.g., a liveor near-live preview image from either sensor). In some examples, thedigital viewfinder (e.g., 1014) displays data based only one of thefirst and second cameras (e.g., 1002, 1004).

At block 1104, while displaying the digital viewfinder (e.g., 1014), theelectronic device (e.g., 1000) detects a gesture (e.g., 1010), a draggesture on a touch-sensitive surface) that progresses at a gesture rate(e.g., 1016), the gesture (e.g., 1010) corresponding to an instructionto zoom the digital viewfinder (e.g., 1014) from a first magnificationlevel to a third magnification level.

At block 1106, in response to detecting the gesture (e.g., 1010), theelectronic device (e.g., 1000) zooms the digital viewfinder (e.g., 1014)from the first magnification level to a second magnification level andfrom the second magnification level to a third magnification level,including: at block 1108, during a first portion of the gesture, theelectronic device (e.g., 1000) zooms the digital viewfinder (e.g., 1014)at a first rate (e.g., an average rate) that is slower than the gesturerate (e.g., 1016) at which the gesture is progressing, and at block 1112during a second portion of the gesture that occurs after the firstportion of the gesture, the electronic device (e.g., 1000) zooms thedigital viewfinder (e.g., 1014) at a second rate (e.g., an average rate)that is faster than the gesture rate (e.g., 1016) at which the gestureis progressing. Thus, by zooming the digital viewfinder (during thefirst portion of the gesture) at the first rate that is slower than thegesture rate, the electronic device performs smooth, cinematic-stylezooms with reduced (or eliminated) sudden zooms in the viewfinder (andin recorded videos), even when the user provides imprecise or fastgestures for zooming. Similarly, by zooming the digital viewfinder(during the second portion of the gesture) at a second rate that isfaster than the gesture rate, the electronic device performs smooth,cinematic-style zooms while catching up to the user's gesture to achievethe user's requested zoom.

In some examples, the first camera (e.g., 1002) and the second camera(e.g., 1004) have fixed, but different, focal lengths. In some examples,the focal length, field of view, and optical zoom properties of theoptical system is fixed for each of the cameras (e.g., 1002, 1004), butthe fixed focal length is different between the first camera (e.g.,1002) and the second camera (e.g., 1004). In some examples, theelectronic device (e.g., 1000) receives a request to record a videoprior to detecting the gesture and, in response, the electronic device(e.g., 1000) records a video to memory, the video recording beginningbefore the gesture is detected and ending after the gesture ends. Insome examples, the recorded video includes zooming that corresponds tothe zooming performed in the digital viewfinder (e.g., 1014). In someexamples, the same (or similar) images displayed in the viewfinder arestored in memory for the video.

At block 1110, during the first portion of the gesture: the gestureprogresses from a first state to a second state, wherein the first statecorresponds to the first magnification level and the second statecorresponds to the second magnification level that is higher than thefirst magnification level (e.g., if the gesture is maintained at thesecond state for at least a predetermined period of time themagnification level will come to rest at the second magnificationlevel), and the electronic device (e.g., 1000) zooms the digitalviewfinder (e.g., 1014) from the first magnification level to anintermediate magnification level that is higher the first magnificationlevel and lower than the second magnification level (e.g., themagnification level lags behind the gesture). Thus, by zooming thedigital viewfinder (during the first portion of the gesture) to theintermediate magnification level that is less than the secondmagnification level (to which the second state corresponds), theelectronic device performs smooth, cinematic-style zooms with reduced(or eliminated) sudden zooms in the viewfinder (and in recorded videos),even when the user provides imprecise or fast gestures for zooming.

At block 1114, during the second portion of the gesture: the gestureprogresses from the second state to a third state, wherein the thirdstate corresponds to a third magnification level that is higher than thesecond magnification level and the intermediate magnification level(e.g., if the gesture is maintained at the second state for at least apredetermined period of time the magnification level will come to restat the second magnification level), and the electronic device (e.g.,1000) zooms the digital viewfinder (e.g., 1014) from the intermediatemagnification level that is lower than the second magnification level tothe third magnification level (e.g., the magnification level catches upto the gesture, changing from the intermediate magnification level tothe third magnification level, wherein the intermediate magnificationlevel is lower than the second magnification level). Thus, by zoomingthe digital viewfinder (during the second portion of the gesture) to thethird magnification level (that corresponds to the third state), theelectronic device performs smooth, cinematic-style zooms while catchingup to the user's gesture to achieve the user's requested zoom.

In some embodiments, the first state of the gesture is a state at whichthe contact (e.g., 1010) is detected at a location that corresponds to aportion of a zoom control (e.g., 1030) that corresponds to the firstmagnification level. In some embodiments, the, the second state of thegesture (e.g., 1010) is a state at which the contact is detected at alocation that corresponds to a portion of the zoom control (e.g., 1030)that corresponds to the second magnification level). In someembodiments, the third state of the gesture (e.g., 1010) is a state atwhich the contact is detected at a location that corresponds to aportion of the zoom control (e.g., 1030) that corresponds to the thirdmagnification level.

In accordance with some embodiments, the first portion of the gestureincludes movement of one or more contacts (e.g., 1010) on atouch-sensitive surface (e.g., a drag input or de-pinch input on atouch-sensitive display (e.g., 1012)) and the rate at which the firstportion of the gesture is progressing is based on a rate of movement ofthe one or more contacts (e.g., 1010). Thus, because the rate of thegesture is based on the rate of movement of the contacts, the electronicdevices provides a user-machine interface that performs intuitive zoomoperations based on contact inputs. The second portion of the gestureincludes continued movement of the one or more contacts (e.g., 1010) onthe touch-sensitive surface (e.g., a continuation of the drag input orthe de-pinch input the touch-sensitive display) and the rate at whichthe second portion of the gesture is progressing is based on a rate ofmovement of the one or more contacts (e.g., 1010), during the secondportion of the gesture, the movement of the one or more contacts (e.g.,1010) ceases while the one or more contacts (e.g., 1010) continue to bedetected on the touch-sensitive surface. In some examples, theelectronic device 1000 continues to zoom the digital viewfinder (e.g.,1014) after the movement of the one or more contacts (e.g., 1010) hasceased (e.g., the zooming lags behind the movement of the contacts(e.g., 1010) for at least a portion of the gesture and then catches upwhen the movement of the contacts (e.g., 1010) stops.

In accordance with some embodiments, continuing to zoom the digitalviewfinder (e.g., 1014) after the movement of the one or more contacts(e.g., 1010) has ceased includes gradually decreasing the rate at whichthe magnification level is increasing (e.g., decreasing the rate atwhich the zoom is increasing as the current magnification levelapproaches the third magnification level that corresponds to theposition at which the one or more contacts (e.g., 1010) stopped moving).Thus, by managing the rate of the magnification based on the movement ofthe contacts ceasing (or slowing), the electronic device performssmooth, cinematic-style decreases in the zoom while achieving the user'srequested zoom, even when the gesture includes abrupt changes.

In accordance with some embodiments, zooming the digital viewfinder(e.g., 1014) at a rate that is slower than the gesture rate (e.g., 1012)at which the gesture is progressing includes gradually increasing therate at which the magnification level increases when the contact movesaway from a starting position on the touch-sensitive surface (e.g., sothat the magnification level eases into a respective rate of changingthe magnification level then eases out of the rate of changing themagnification level to provide a smoother zooming effect). Thus, bymanaging the rate of the magnification based on the movement of thecontacts away from the starting position, the electronic device performssmooth, cinematic-style increases in the zoom, even when the gestureincludes abrupt changes.

In accordance with some embodiments, the electronic device (e.g., 1000)concurrently displays, on the display (e.g., 1012), with the digitalviewfinder (e.g., 1014): a zoom control (e.g., 1030) (e.g., anadjustable zoom control (e.g., 1030) such as a zoom slider), wherein aplurality of positions along the zoom control (e.g., 1030) correspond toa plurality of magnification levels, and a zoom indicator affordance(e.g., 1040) (e.g., a draggable circle/square/any shape on the zoomslider). In response to the electronic device (e.g., 1000) detecting thegesture, the electronic device (e.g., 1000) updates display of the zoomindicator affordance (e.g., 1040) to transition, at the gesture rate(e.g., 1012), from a first position of the plurality of positions to asecond position of the plurality of positions, wherein the firstposition corresponds to the first magnification level of the pluralityof magnification levels and the second position corresponds to the thirdmagnification level of the plurality of magnification levels. Thus, theelectronic device (e.g., 1000) enables the user to perform the zoomoperation by dragging the zoom indicator affordance (e.g., 1040) alongthe zoom control (e.g., 1030).

In accordance with some embodiments, zooming the digital viewfinder(e.g., 1014) from the first magnification level to the thirdmagnification level includes zooming the digital viewfinder (e.g., 1014)while smoothing the rate at which the zooming occurs relative to therate at which the gesture progresses, by limiting the rate of the zoomor the rate of change of the rate of the zoom. Thus, by managing therate of the magnification, the electronic device performs smooth,cinematic-style zooms, even when the gesture includes abrupt changes oris fast. Thus, the electronic device (e.g., 1000) provides a morevisually pleasing zoom experience in the viewfinder and for videosrecorded to memory. In some examples, the electronic device (e.g., 1000)zooms the digital viewfinder (e.g., 1014) while smoothing the rate atwhich the zoom occurs by limiting the rate of the zoom (e.g., a max rateof zoom). In some examples, the electronic device (e.g., 1000) zooms thedigital viewfinder (e.g., 1014) while smoothing the rate at which thezoom occurs by limiting the rate of change of the rate of the zoom. Insome examples, the electronic device (e.g., 1000) zooms the digitalviewfinder (e.g., 1014) while smoothing the rate at which the zoomoccurs by limiting both the rate of the zoom and the rate of change ofthe rate of the zoom.

In accordance with some embodiments, during a third portion of thegesture that occurs before the first portion of the gesture, theelectronic device (e.g., 1000) zooms the digital viewfinder (e.g., 1014)at a third rate that corresponds to the gesture rate (e.g., 1012) atwhich the gesture is progressing. Thus, the electronic device (e.g.,1000) provides a more visually pleasing zoom experience in theviewfinder and for videos recorded to memory.

In accordance with some embodiments, at a first time during the firstportion of the gesture, the electronic device (e.g., 1000) zooms thedigital viewfinder (e.g., 1014) at the first rate while a first gesturerate (e.g., 1016) of the gesture exceeds a threshold gesture rate, and(where the gesture is fast and pulling away from the zoom, assuming thefirst rate is the max zoom speed and the threshold gesture is thegesture speed that corresponds to the first rate) at a second timeduring the second portion of the gesture, the electronic device (e.g.,1000) zooms the digital viewfinder (e.g., 1014) at the first rate whilea second gesture rate (e.g., 1016) of the gesture does not exceed thethreshold gesture rate (where the gesture has slowed or stopped and thezoom is catching up at the max zoom speed). Thus, by limiting zoomingthe digital viewfinder to a maximum zoom speed, the electronic deviceperforms smooth, cinematic-style zooms with reduced (or eliminated)high-speed zooms in the viewfinder (and in recorded videos), even whenthe user provides imprecise or fast gestures for zooming. Thus, in someexamples, the digital viewfinder (e.g., 1014) reaches (e.g., maxes outat) a maximum zoom rate, which helps to smooth out zooms that occurwhile a video is being recorded. Thus, the electronic device (e.g.,1000) provides a more visually pleasing zoom experience in theviewfinder and for videos recorded to memory.

In accordance with some embodiments, subsequent to detecting the gesture(e.g., 1010) and subsequent to zooming the digital viewfinder (e.g.,1014) from the first magnification level to the third magnificationlevel: the electronic device (e.g., 1000) detects a tap gesture (e.g.,1080, a touch gesture) at a location corresponding to a third positionof the plurality of positions (e.g., at a location on a touch-sensitivedisplay (e.g., 1012) that corresponds to the third position), whereinthe third position corresponds to a fourth magnification level of theplurality of magnification levels. In response to detecting the tapgesture (e.g., 1080), the electronic device (e.g., 1000) zooms thedigital viewfinder (e.g., 1014) from the third magnification level tothe fourth magnification level.

In accordance with some embodiments, the zooming is limited to a maximumzoom rate. In some examples, the rate of change of the zoom rate islimited to a maximum zoom-change rate. Thus, the electronic device(e.g., 1000) provides a more visually pleasing zoom experience in theviewfinder and for videos recorded to memory by limiting zooms that arenot smooth.

In accordance with some embodiments, in response to detecting thegesture, the electronic device (e.g., 1000) displays, on the display(e.g., 1012), a graphical magnification level indicator (e.g., 1090)(e.g., including text indication of the current magnification level)that indicates a current magnification level. Thus, the electronicdevice (e.g., 1000) informs the user as to the current magnificationlevel.

In accordance with some embodiments, after the graphical magnificationlevel indictor has been displayed for a predetermined period of timeafter zooming of the digital viewfinder (e.g., 1014) has ceased, theelectronic device (e.g., 1000) ceases to display, on the display (e.g.,1012), the graphical magnification level indictor. Thus, by ceasing todisplay the graphical magnification level indicator when it is likelythat the user needs access to the graphical magnification levelindicator (e.g., after a predetermined period of time), the electronicdevice provides a less obstructed user interface (and, for example,viewfinder) that results in a more efficient user-machine interface. Insome examples, the graphical magnification level indicator (e.g., 1090)is displayed while zooming the digital viewfinder (e.g., 1014) and for apredetermined period of time after zooming the digital viewfinder (e.g.,1014). In some examples, the graphical zoom indicator fades out afterthe second predetermined amount of time has elapsed.

In accordance with some embodiments, after the zoom control (e.g., 1030)has been displayed for a second predetermined period of time afterzooming of the digital viewfinder (e.g., 1014) has ceased, theelectronic device (e.g., 1000) ceases to display, on the display (e.g.,1012), the zoom control (e.g., 1030). In some examples, the zoom control(e.g., 1030) is only displayed while zooming the digital viewfinder(e.g., 1014) and for a predetermined period of time after zooming thedigital viewfinder (e.g., 1014). In some examples, the zoom control(e.g., 1030) fades out after the second predetermined amount of time haselapsed.

In accordance with some embodiments, the electronic device (e.g., 1000)displays (e.g., persistently), on the display (e.g., 1012), the zoomcontrol (e.g., 1030) while displaying the digital viewfinder (e.g.,1014) (e.g., zoom control (e.g., 1030) is persistent.) Thus, the zoomcontrol (e.g., 1030) is available to the user without the need for theuser to provide additional input.

In accordance with some embodiments, the electronic device (e.g., 1000)detects a pinch gesture on the digital viewfinder (e.g., 1014) (e.g.,the electronic device (e.g., 1000) includes a touch-sensitive surfaceand the pinch gesture is detected at a location corresponding to thedigital viewfinder (e.g., 1014).). In response to detecting the pinchgesture: the electronic device (e.g., 1000) zooms the digital viewfinder(e.g., 1014) at a rate corresponding to a rate at which the pinchgesture is progressing throughout the pinch gesture (e.g., withoutlimiting the rate of change of the zoom to smooth the rate at which thezooming occurs relative to the rate at which the gesture progresses).Thus, by zooming the digital viewfinder (e.g., 1014) at a rate thatcorresponds to the rate of the gesture, the electronic device providesthe user with a mechanism that avoids the zoom-managing techniquesdescribed above, thereby providing the user with an option to directlymanipulate the zoom of the viewfinder (and recorded videos), includingzooms with high speeds and abrupt changes. Thus, when the electronicdevice (e.g., 1000) detects a pinch gesture corresponding to a zoomoperation, the electronic device (e.g., 1000) does not smooth the rateof the zoom, so that the zooming while pinching adjusts themagnification level with direct manipulation such that changes in themagnification level start when the contacts (e.g., 1010) start movingand end when the contacts (e.g., 1010) stop moving.

In accordance with some embodiments, the plurality of positionscorresponding to the plurality of magnification levels are positionedalong the zoom control (e.g., 1092, 1030) such that the magnificationlevels are not distributed linearly.

In accordance with some embodiments, a distance along the zoom control(e.g., 1030) between the lowest magnification level (e.g., 1×magnification) and a magnification level that is double the lowestmagnification level (e.g., 2× magnification) extends more than 25% of atotal distance of the zoom control and less than 45% of the totaldistance of the zoom control (e.g., 1030) (e.g., 30% of the totaldistance of the zoom control (e.g., 1030)).

In accordance with some embodiments, locations along the zoom control(e.g., 1030) corresponding to optical magnification levels are visuallydistinguished (e.g., snap points) from locations along the zoom control(e.g., 1030) corresponding to non-optical magnification levels. In someexamples, the zoom control (e.g., 1030) includes markers for the 1× and2× magnification levels, which correspond to optical zooms of a firstcamera and a second camera of the electronic device (e.g., 1000). Thus,by providing visually distinguished locations along the zoom controlthat correspond to optical magnification levels (as compared tonon-optical magnification levels), the electronic device informs theuser as to the magnification levels that are optical and (for example)provide higher quality image characteristics, thereby reducing the needfor the user to provide multiple inputs to try varying zoommagnification levels to achieve an image with high quality.

In accordance with some embodiments, the third position of the pluralityof positions corresponds to an optical magnification level.

In accordance with some embodiments, displaying the zoom control (e.g.,1030) includes displaying the zoom control (e.g., 1030 of FIGS. 10Q and10R) vertically on the display (e.g., 1012). In some examples, the zoomcontrol (e.g., 1030) is a straight line. Thus, the zoom control (e.g.,1030, 1092) is displayed at an orientation that is convenient for theuser to access.

In accordance with some embodiments, displaying the zoom control (e.g.,1030) includes displaying the zoom control (e.g., 1030 of FIGS. 10B and10S) horizontally on the display (e.g., 1012). In some examples, thezoom control (e.g., 1030, 1092) is a straight line. Thus, the zoomcontrol (e.g., 1030) is displayed at an orientation that is convenientfor the user to access.

Note that details of the processes described above with respect tomethod 1100 (e.g., FIG. 11) are also applicable in an analogous mannerto the methods described below. For example, methods 700, 900, 1300,1900, 2100, and 2300 optionally include one or more of thecharacteristics of the various methods described above with reference tomethod 1100. For example, the electronic viewfinder in method 1100 isanalogous to the electronic viewfinder in methods 700, 900, 1300, 1900,2100, and 2300. For brevity, these details are not repeated below.

FIGS. 12A-12I illustrate exemplary devices and user interfaces formanaging camera effects, in accordance with some embodiments. The userinterfaces in these figures are used to illustrate processes describedbelow, including the processes in FIG. 13.

FIG. 12A illustrates an exemplary electronic device 1200 with a firstcamera 1202, and optionally, a second camera 1204, on the rear of theelectronic device 1200. In some examples, the first camera 1202 and thesecond camera 1204 have fixed, but different, focal lengths. In someexamples, the focal length, field of view, and/or optical magnificationproperties of the optical system is fixed for each of the cameras, Insome embodiments, in addition to having different fixed focal lengths,the cameras (e.g., 1202, 1204) have different fixed fields of view anddifferent fixed optical magnification properties.

In some embodiments, the first camera 1202 has a first field of view andthe second camera 1204 has a second field of view, wherein the firstfield of view and the second field of view overlap. In some examples,the first camera 1202 and the second camera 1204 are spaced apart sothat a parallax between images captured by the camera (e.g., 1202 and1204) is used to determine depths for objects represented by differentportions of the digital viewfinder. In some embodiments, the firstcamera 1202 and the second camera 1204 are located on a surface of theelectronic device 1200 and the optical axes of the cameras (e.g., 1202and 1204) are arranged such that they are parallel. In some examples,the first camera 1202 and the second camera 1204 capture overlappingfields of view, for example, at least 50% overlapping, at least 90%overlapping, or more. In some examples, the first camera 1202 has awider field of view than the second camera 1204. In some examples, thesecond camera 1204 has a wider field of view than the first camera 1202.When a wide-angle camera (e.g., a camera with a wide-angle lens) has awider field of view than a telephoto camera (e.g., a camera with atelephoto lens), at a 1× magnification of the wide-angle camera objectsappear further away than at a 1× magnification of the telephoto camera.If the wide-angle camera and the telephoto camera have overlappingfields of view such that the field of view of the telephoto camera isapproximately centered on the field of view of the wide angle camera, animage captured with the telephoto camera at a 1× magnification levelwill, in some circumstances (e.g., where the subject of the image is atleast 1 meter away), appear to be an optical zoom of a correspondingimage captured with the wide-angle camera at a 1× magnification level.

FIG. 12B illustrates the front of the electronic device 1200 includingdisplay 1212. As illustrated in FIG. 12B, in some embodiments, theelectronic device displays, on the display 1212, a digital viewfinder1214 (e.g., including a live or near-live preview image from the firstcamera 1202 or the second camera 1204 of the electronic device). In FIG.12B, the digital viewfinder 1214 is at the first magnification level(e.g., corresponding to location 1222 on the zoom control 1230).

In some embodiments, as illustrated in FIG. 12B, prior to detecting thegesture, the electronic device 1200 concurrently displays, on thedisplay, with the digital viewfinder 1214, a zoom control 1230, whereina plurality of positions (e.g., 1222, 1224, 1226) along the zoom control1230 correspond to a plurality of magnification levels, a zoom indicatoraffordance 1240 at a first position 1222 of the plurality of positionsalong the zoom control 1230 corresponding to the first magnificationlevel (e.g., a draggable circle or square on the zoom control slider),and a target zoom point at a third position 1226 of the plurality ofpositions along the zoom control that is different from the firstposition 1222, wherein the third position 1226 corresponds to the thirdmagnification level, and wherein a second position 1224 of the pluralityof positions along the zoom control 1230 corresponds to the secondmagnification level. Thus, the electronic device 1200 provides the userwith visual indications of the available magnification levels.

As illustrated in FIGS. 12C-12E, the electronic device 1200 detects agesture 1220 (e.g., a drag gesture, a pinch gesture, a tap gesture)corresponding to an instruction to zoom the digital viewfinder 1214 froma first magnification level (e.g., a 1× magnification level of a firstcamera of the device, corresponding to location 1222 on the zoom control1230) to a second magnification level (e.g., a magnification levelcorresponding to a digital zoom of the first camera, a 1.8×magnification level, a magnification level corresponding to the firstcamera, corresponding to location 1224 on the zoom control 1230)different from the first magnification level. The electronic devicedetermines whether a set of one or more conditions has been met, whereina first condition of the set of one or more conditions is met when thedifference (e.g., the absolute difference) between the secondmagnification level (e.g., corresponding to location 1224 on the zoomcontrol 1230) and a third magnification level (e.g., a magnificationlevel that corresponds to a 1× magnification level of a second camera ofthe device with a different focal length than the first camera,corresponding to location 1226 on the zoom control 1230) is less than apredetermined threshold (e.g., within 0.25× magnification) (e.g., amagnification level corresponding to an optical magnification level, 2×magnification, a magnification level corresponding to the secondcamera). The electronic device, in accordance with a determination thatthe set of one or more conditions has been met, zooms the digitalviewfinder 1214 from the first magnification level 1222 to the thirdmagnification level 1226 (e.g., automatically, without additional userinput). In some examples, the predetermined zoom threshold is smallenough such that it is advantageous to zoom the viewfinder from thefirst magnification level (that is a digital magnification) to a secondmagnification level (that is an optical magnification level). In someexamples, the third magnification level is different from the secondmagnification level.

In some examples, the third magnification level is higher than thesecond magnification level, and the second magnification level is higherthan the first magnification level.

In some embodiments, in accordance with a determination that the set ofone or more conditions has not been met, the electronic device 1200,zooms the digital viewfinder 1214 from the first magnification level(e.g., corresponding to location 1222 on the zoom control 1230) to thesecond magnification level (e.g., corresponding to location 1224 on thezoom control 1230) (e.g., automatically, without additional user input).

In some embodiments, as illustrated in FIG. 12E, a second condition ofthe set of one or more conditions is met when the second magnificationlevel (e.g., corresponding to location 1224 on the zoom control 1230) isless than the third magnification level (e.g., corresponding to location1226 on the zoom control 1230). In some examples, the device 1200automatically zooms the digital viewfinder 1214 to the thirdmagnification level if the user has initiated a change to amagnification that is less than the third magnification level.

In some embodiments, a third condition of the set of one or moreconditions is met when the second magnification level (e.g.,corresponding to location 1224 on the zoom control 1230) is more thanthe third magnification level (e.g., corresponding to location 1226 onthe zoom control 1230). In some examples, the device 1200 automaticallyzooms the digital viewfinder 1214 to the third magnification level ifthe user has initiated a change to a magnification that is more than thethird magnification level.

In some embodiments, a fourth condition of the set of one or moreconditions is met when the absolute difference between the firstmagnification level (e.g., corresponding to location 1222 on the zoomcontrol 1230) and the second magnification level (e.g., corresponding tolocation 1224 on the zoom control 1230) is greater than a secondpredetermined threshold level. In some examples, the device 1200automatically zooms to the third magnification level if the user hasinitiated a change that exceeds the predetermined adjustment threshold.Thus, if the user initiates a change that is minor or relatively small,the electronic device recognizes that the user is trying to achieve avery particular magnification level and does not automatically zoom thedigital viewfinder to the third magnification level.

In some embodiments, as illustrated in FIG. 12E, the secondmagnification level (e.g., corresponding to location 1224 on the zoomcontrol 1230) corresponds to a digital magnification level and whereinthe third magnification level (e.g., corresponding to location 1226 onthe zoom control 1230) corresponds to an optical magnification level.Thus, the electronic device automatically transitions the digitalviewfinder 1214 to a magnification that is optical, rather than digital.In some examples, this provides a higher quality viewfinder and higherquality images that are captured using the magnification.

In some embodiments the electronic device includes a first camera 1202and a second camera 1204, and wherein the displayed digital viewfinder1214 is based on data received from at least one of the first camera1202 and the second camera 1204. In some embodiments the electronicdevice 1200 includes a first camera 1202 not the second camera 1204.

In some embodiments, the digital viewfinder 1214 is based on datareceived from the first camera 1202 (e.g., not the second camera 1204)when the digital viewfinder 1214 is zoomed to the second magnificationlevel (e.g., corresponding to location 1224 on the zoom control 1230)and wherein the digital viewfinder 1214 is based on data received fromthe second camera 1204 (e.g., not the first camera 1202) when thedigital viewfinder 1214 is zoomed to the third magnification level(e.g., corresponding to location 1226 on the zoom control 1230).

In some embodiments, as illustrated in FIG. 12F, in accordance with adetermination that the set of one or more conditions has been met, theelectronic device 1200, updates the display of the zoom indicatoraffordance 1240 from the first position 1222 to the third position 1224corresponding to the third magnification level. Thus, the electronicdevice provides the user with visual indications of the current andavailable magnification levels. In some examples, in accordance with adetermination that the set of one or more conditions has been met, theelectronic device 1200 updates the display of the zoom indicatoraffordance 1240 to the third position 1224 corresponding to the thirdmagnification level.

In some embodiments, in accordance with a determination that the set ofone or more conditions has not been met, the electronic device 1200updates display of the zoom indicator affordance 1240 from the firstposition 1222 to the second position 1224 corresponding to the secondmagnification level. Thus, the electronic device provides the user withvisual indications of the current and available magnification levels.

In some embodiments, as illustrated in FIG. 12H and FIG. 12I, inaccordance with the determination that the set of one or more conditionshas been met, the electronic device 1200 updates display of the targetzoom point 1270 to expand to encapsulate the zoom indicator affordancewhen the zoom indicator affordance 1240 is displayed at the secondposition 1272 (e.g., within a predetermined distance from the targetzoom point 1270, within a predetermined distance from the third position1226). In some examples, the zoom indicator affordance 1240 expands toencapsulate the target zoom point 1270 (which, for example, remainsstationary and visually unchanged) as the zoom indicator affordance 1240gets closer to the target zoom point (e.g., within a predetermineddistance from the target zoom point 1270, within a predetermineddistance from the third position 1226).

In some embodiments, as illustrated in FIG. 12I, a fifth condition ofthe set of one or more conditions is met the electronic device 1200detects an input lift-off signal associated with the gesture 1220. Insome examples, the electronic device 1200 determines that the gesture1220 has ended, such as by detecting a lift-off of a touch performed ona touch-sensitive surface.

In some embodiments, the first camera 1202 has a first field of view andthe second camera 1204 has a second field of view. In some examples, thefirst field of view and the second field of view overlap. In someexamples, the first field of view and the second field of view aredifferent. In some examples, zooming the digital viewfinder 1214 fromthe first magnification level to the third magnification level includes,visually compensating for the difference between the first field of viewand the second field of view to reduce shifting of an image displayed inthe digital viewfinder 1214. In some examples, the electronic deviceshifts the images in the digital viewfinder to counter the parallaxeffect when transitioning the electronic viewfinder 1214 from displaybased on data from the first camera 1202 to display based on data fromthe second camera 1204.

In some embodiments, while the magnification level of the digitalviewfinder 1214 is at a fourth magnification level that is differentfrom the third magnification level, the electronic device 1200, detectsa tap input at a location (e.g., 1226) that corresponds to a respectiveportion of the zoom control 1230. In response to the electronic device1200 detecting the tap input, in accordance with a determination, at theelectronic device 1200, that the respective portion of the zoom control1230 corresponds to the third magnification level, the electronic devicezooms the digital viewfinder 1214 to the third magnification level. Forexample, the electronic device 1214 zooms the digital viewfinder 1214 tothe magnification level that corresponds to a 1× magnification level ofa second camera 1204 of the device (e.g., which displays in the userinterface as a “2×” magnification of the electronic viewfinder 1214,based on the second camera 1204 having an optical magnification that is2× that of the first camera 1202) in response to a tap gesture on theportion of the zoom control that corresponds to the 1× magnificationlevel of the second camera 1204 of the device. In accordance with adetermination that the respective portion of the zoom controlcorresponds to a magnification level that is different from the thirdmagnification level 1226, the electronic device maintain the digitalviewfinder 1214 at the fourth magnification level.

In some embodiments, the electronic device 1214 does not zoom to adifferent magnification level in response to a tap gesture somewhereelse on the zoom control. Thus, in some embodiments, it is easier forthe user to get back to the 1× magnification level of the second cameraof the device than to other magnification levels so as to make it easierfor the user to select the 1× magnification level of the second cameraof the device. This provides better visual quality for images thanmagnification levels at which a digital zoom operation is beingperformed by digitally cropping and enlarging a 1× magnification imagecaptured by a corresponding camera.

In some embodiments, the 1× magnification level for the first camera1202 can also be tapped (e.g., detecting a tap gesture) to switch to the1× magnification level for the first camera 1202. In some embodiments,1× magnification levels for one or more additional cameras can also betapped to switch to the 1× magnification level for those cameras, whilestill discouraging the user from causing the electronic device 1200 toswitch to magnification levels between 1× magnification levels for thedifferent cameras (e.g., intermediate magnification levels between the1× magnification levels for the different cameras, that correspond tomagnification levels at which a digital zoom operation is beingperformed, can be reached by dragging a thumb of a zoom control to alocation corresponding to one of those intermediate magnificationlevels).

FIG. 13 is a flow diagram illustrating a method for managing cameraeffects, in accordance with some embodiments. Method 1300 is performedat an electronic device (e.g., 100, 300, 500, 600, 800, 1000, 1200) witha first camera, a second camera, and a display. Some operations inmethod 1300 are, optionally, combined, the order of some operations are,optionally, changed, and some operations are, optionally, omitted.

At block 1302, the electronic device (e.g., 1200) displays, on thedisplay (e.g., 1212), a digital viewfinder (e.g., 1214) (e.g., includinga live or near-live preview image from a first camera (e.g., 1202) or asecond camera (e.g., 1204) of the electronic device (e.g., 1200)).

At block 1304, the electronic device (e.g., 1200) detects a gesture(e.g., 1220) (e.g., a drag gesture, a pinch gesture, a tap gesture)corresponding to an instruction to zoom the digital viewfinder (e.g.,1214) from a first magnification level (e.g., a 1× magnification levelof a first camera (e.g., 1202) of the electronic device (e.g., 1200)) toa second magnification level (e.g., a magnification level correspondingto a digital zoom of the first camera (e.g., 1202), a 1.8× magnificationlevel, a magnification level corresponding to the first camera (e.g.,1202)) different from the first magnification level.

At blocks 1306-1308, the electronic device (e.g., 1200) determineswhether a set of one or more conditions has been met. A first conditionof the set of one or more conditions is met when the difference (e.g.,the absolute difference) between the second magnification level and athird magnification level (e.g., a magnification level that correspondsto a 1× magnification level of a second camera (e.g., 1204) of thedevice with a different focal length than the first camera (e.g., 1202))is less than a predetermined threshold (e.g., within 0.25×magnification) (e.g., a magnification level corresponding to an opticalmagnification level, 2× magnification, a magnification levelcorresponding to the second camera (e.g., 1204)). Thus, by including acondition that is met when the user attempts to zoom to a magnificationlevel that is close to the third magnification level (e.g., an opticalmagnification level), the electronic device avoids making large changesto the magnification level requested by the user, thus avoiding the needfor the user to readjust the magnification multiple times to achieve adesired effect. In some examples, the third magnification level isdifferent from the second magnification level.

At block 1310, in accordance with a determination that the set of one ormore conditions has been met, the electronic device (e.g., 1200) zoomsthe digital viewfinder (e.g., 1214) from the first magnification levelto the third magnification level (e.g., automatically, withoutadditional user input). In some examples, the predetermined zoomthreshold is small enough such that it is advantageous to zoom theviewfinder (e.g., 1214) from the first magnification level (e.g., adigital magnification) to a second magnification level (e.g., an opticalmagnification level). Thus, by zooming the digital viewfinder to thethird magnification level (e.g., an optical magnification level), theelectronic device precisely zooms the digital viewfinder to apre-selected magnification level even when the user input is imprecise.

At block 1312, in accordance with some embodiments, in accordance with adetermination that the set of one or more conditions has not been met,the electronic device (e.g., 1200) zooms the digital viewfinder (e.g.,1214) from the first magnification level to the second magnificationlevel (e.g., automatically, without additional user input).

In accordance with some embodiments, a second condition of the set ofone or more conditions is met when the second magnification level isless than the third magnification level. In some examples, the deviceautomatically moves to the third magnification level if the user hasinitiated a change to a magnification that is less than the thirdmagnification level. Thus, by including a condition that is only metwhen the user-requested magnification level is less than thepre-selected magnification level (e.g., the third magnification level),the electronic device automatically overrides the user's requested zoomof the digital viewfinder in some circumstances, while the usermaintains control in other circumstances, thereby eliminating the needfor the user to provide inputs to selectively enable and disable thefeature.

In accordance with some embodiments, a third condition of the set of oneor more conditions is met when the second magnification level is morethan the third magnification level. In some examples, the deviceautomatically moves to the third magnification level if the user hasinitiated a change to a magnification that is more than the thirdmagnification level. Thus, by including a condition that is only metwhen the user-requested magnification level is more than thepre-selected magnification level (e.g., the third magnification level),the electronic device automatically overrides the user's requested zoomof the digital viewfinder in some circumstances, while the usermaintains control in other circumstances, thereby eliminating the needfor the user to provide inputs to selectively enable and disable thefeature.

In accordance with some embodiments, a fourth condition of the set ofone or more conditions is met when the absolute difference between thefirst magnification level and the second magnification level is greaterthan a second predetermined threshold level. In some examples, thedevice automatically moves to the third magnification level if the userhas initiated a change that exceeds the predetermined adjustmentthreshold. Thus, if the user initiates a change that is minor orrelatively small, the electronic device (e.g., 1200) recognizes that theuser is trying to achieve a very particular magnification level and doesnot automatically zoom the digital viewfinder (e.g., 1214) to the thirdmagnification level, thereby providing the user with the ability toachieve precise zooming using precise user inputs, while maintaining theability to achieve precise zooming using imprecise user inputs.

In accordance with some embodiments, the second magnification levelcorresponds to a digital magnification level and wherein the thirdmagnification level corresponds to an optical magnification level. Thus,the electronic device (e.g., 1200), by automatically transitioning thedigital viewfinder (e.g., 1214) to a magnification that is optical,rather than digital, overrides the user's requested magnification level(e.g., the second magnification level) so that the viewfinder (andaccordingly, pictures taken while displaying the viewfinder) uses amagnification level that does not rely on digital zoom, therebyproviding higher quality images. In some examples, this provides ahigher quality viewfinder (e.g., 1214) and higher quality images thatare captured using the magnification.

In accordance with some embodiments, the electronic device (e.g., 1200)includes a first camera (e.g., 1202) and a second camera (e.g., 1204),and wherein the displayed digital viewfinder (e.g., 1214) is based ondata received from at least one of the first camera (e.g., 1202) and thesecond camera (e.g., 1204).

In accordance with some embodiments, the digital viewfinder (e.g., 1214)is based on data received from the first camera (e.g., 1202) (e.g., notthe second camera (e.g., 1204)) when the digital viewfinder (e.g., 1214)is zoomed to the second magnification level and wherein the digitalviewfinder (e.g., 1214) is based on data received from the to the secondcamera (e.g., 1204) (e.g., not the first camera (e.g., 1202)) when thedigital viewfinder (e.g., 1214) is zoomed to the third magnificationlevel.

In accordance with some embodiments, prior to detecting the gesture(e.g., 1220), the electronic device (e.g., 1200) concurrently displays,on the display (e.g., 1212), with the digital viewfinder (e.g., 1214): azoom control (e.g., 1230), wherein a plurality of positions along thezoom control (e.g., 1230) correspond to a plurality of magnificationlevels, a zoom indicator affordance (e.g., 1240) at a first position ofthe plurality of positions along the zoom control (e.g., 1230)corresponding to the first magnification level (e.g., a draggable circleor square on the zoom control (e.g., 1230) slider), and a target zoompoint (e.g., 1270) at a third position of the plurality of positionsalong the zoom control (e.g., 1230) that is different from the firstposition, wherein the third position corresponds to the thirdmagnification level, and a second position of the plurality of positionsalong the zoom control (e.g., 1230) corresponds to the secondmagnification level. Thus, the electronic device (e.g., 1200) providesthe user with visual indications of the current and availablemagnification levels.

In accordance with some embodiments, in accordance with a determinationthat the set of one or more conditions has been met, the electronicdevice (e.g., 1200) updates display of the zoom indicator affordance(e.g., 1240) from the first position to the third position correspondingto the third magnification level. Thus, the electronic device (e.g.,1200) provides the user with visual indications of the current andavailable magnification levels.

In accordance with some embodiments, in accordance with a determinationthat the set of one or more conditions has not been met, the electronicdevice (e.g., 1200) updates display of the zoom indicator affordance(e.g., 1240) from the first position to the second positioncorresponding to the second magnification level. Thus, the electronicdevice (e.g., 1200) provides the user with visual indications of thecurrent and available magnification levels.

In accordance with some embodiments, in accordance with thedetermination that the set of one or more conditions has been met, theelectronic device (e.g., 1200) updates display of the target zoom point(e.g., 1270) to expand to encapsulate the zoom indicator affordance(e.g., 1240) when the zoom indicator affordance (e.g., 1240) isdisplayed at the second position. In some examples, the zoom indicatoraffordance (e.g., 1240) expands to encapsulate the target zoom point(e.g., 1270) as the zoom indicator affordance (e.g., 1240) gets closerto the target zoom point (e.g., 1270). Thus, by expanding the targetzoom point to encapsulate the zoom indicator affordance, the electronicdevice informs the user that the requested magnification level will beautomatically overridden with the third magnification level, therebyprompting the user to make necessary accommodations. In someembodiments, in accordance with the determination that the set of one ormore conditions has been met, the electronic device (e.g., 1200) updatesdisplay of the zoom indicator affordance (e.g., 12040) to encapsulatethe target zoom point (e.g., 1270) when the zoom indicator affordance(e.g., 1240) is displayed at the second position. Thus, by expanding thezoom indicator affordance to encapsulate the target zoom point, theelectronic device informs the user that the requested magnificationlevel will be automatically overridden with the third magnificationlevel, thereby prompting the user to make necessary accommodations.

In accordance with some embodiments, a fifth condition of the set of oneor more conditions is met when the electronic device (e.g., 1200)detects an input lift-off signal associated with the gesture (e.g.,1220). In some examples, the electronic device (e.g., 1200) determinesthat the gesture (e.g., 1220) has ended, such as by detecting a lift-offof a touch performed on a touch-sensitive surface.

In accordance with some embodiments, the first camera (e.g., 1202) has afirst field of view and the second camera (e.g., 1204) has a secondfield of view, wherein the first field of view and the second field ofview overlap, wherein the first field of view and the second field ofview are different, and wherein zooming the digital viewfinder (e.g.,1214) from the first magnification level to the third magnificationlevel includes: the electronic device (e.g., 1200) visually compensatingfor the difference between the first field of view and the second fieldof view to reduce shifting of an image displayed in the digitalviewfinder (e.g., 1214). In some examples, the electronic device (e.g.,1200) shifts the image in the digital viewfinder (e.g., 1214) to counterthe parallax effect when transitioning the viewfinder (e.g., 1214) todisplay based on data from the first camera (e.g., 1202) to displaybased on data from the second camera (e.g., 1204).

In accordance with some embodiments, while the magnification level ofthe digital viewfinder (e.g., 1214) is a fourth magnification level thatis different from the third magnification level, the electronic device(e.g., 1200) detects a tap input at a location that corresponds to arespective portion of the zoom control (e.g., 1230). In response to theelectronic device (e.g., 1200) detecting the tap input: in accordancewith a determination that the respective portion of the zoom control(e.g., 1230) corresponds to the third magnification level, theelectronic device (e.g., 1200) zooms the digital viewfinder (e.g., 1214)to the third magnification level, and (e.g., zoom to the magnificationlevel that corresponds to a 1× magnification level of a second camera(e.g., 1204) of the device in response to a tap gesture (e.g., 1220) onthe portion of the zoom control (e.g., 1230) that corresponds to the 1×magnification level of a second camera (e.g., 1204) of the device), inaccordance with a determination that the respective portion of the zoomcontrol (e.g., 1230) corresponds to a magnification level that isdifferent from the third magnification level, the electronic device(e.g., 1200) maintains the digital viewfinder (e.g., 1214) at the fourthmagnification level (e.g., don't zoom to a different magnification levelin response to a tap gesture somewhere else on the zoom control (e.g.,1230)).

In some examples, it is easier to get back to the 1× magnification levelof the second camera (e.g., 1204) of the device than to othermagnification levels of the device so as to make it easier for users toselect the 1× magnification level of the second camera (e.g., 1204,shown as 2× in FIG. 12F because it is approximately 2× of the 1× zoom ofthe first camera) of the device which provides better visual quality forimages than magnification levels at which a digital zoom operation isbeing performed by digitally cropping and enlarging a 1× magnificationimage captured by a the corresponding camera.

In some examples, the 1× magnification level for the first camera (e.g.,1202) can also be tapped to switch to the 1× magnification level for thefirst camera (e.g., 1202). In some examples, 1× magnification levels forone or more additional cameras can also be tapped to switch to the 1×magnification level for those cameras (e.g., 1202, 1204), while stillpreventing the user from switching to magnification levels between 1×magnification levels for the different cameras (e.g., 1202, 1204))(e.g., intermediate magnification levels between the 1× magnificationlevels for the different cameras (e.g., 1202, 1204), that correspond tomagnification levels at which a digital zoom operation is beingperformed, can be reached by dragging a thumb of a zoom control (e.g.,1230) to a location corresponding to one of those intermediatemagnification levels).

Note that details of the processes described above with respect tomethod 1300 (e.g., FIG. 13) are also applicable in an analogous mannerto the methods described below. For example, methods 700, 900, 1100,1900, 2100, and 2300 optionally include one or more of thecharacteristics of the various methods described above with reference tomethod 1300. For example, the electronic viewfinder in method 1300 isanalogous to the electronic viewfinder in methods 700, 900, 1100, 1900,2100, and 2300. For brevity, these details are not repeated below.

In accordance with some embodiments, FIG. 14 shows an exemplaryfunctional block diagram of an electronic device 1400 configured inaccordance with the principles of the various described embodiments. Inaccordance with some embodiments, the functional blocks of electronicdevice 1400 are configured to perform the techniques described above.The functional blocks of the device 1400 are, optionally, implemented byhardware, software, or a combination of hardware and software to carryout the principles of the various described examples. It is understoodby persons of skill in the art that the functional blocks described inFIG. 14 are, optionally, combined or separated into sub-blocks toimplement the principles of the various described examples. Therefore,the description herein optionally supports any possible combination orseparation or further definition of the functional blocks describedherein.

As shown in FIG. 14, an electronic device 1400 includes a display unit1402 configured to display a graphic user interface, a first camera unit1404, a second camera unit 1406, and a processing unit 1408 coupled tothe display unit 1402, the first camera unit 1404, and the second cameraunit 1406. In some embodiments, the processing unit 1408 includes anapplying unit 1410, a changing unit 1412, a capturing unit 1414, adetecting unit 1416, a generating unit 1418, and a display enabling unit1420.

The processing unit 1408 is configured to: enable display (e.g., withdisplay enabling unit 1420), on the display unit 1402, of a digitalviewfinder including a preview based on data received from the firstcamera unit 1404; and while enabling display (e.g., with displayenabling unit 1420) of the digital viewfinder: in accordance with adetermination that a set of one or more conditions is met, wherein afirst condition of the set of one or more conditions is met when asubject is detected within a predetermined distance from the device,apply (e.g., with applying unit 1410) a simulated optical effect to thepreview displayed in the digital viewfinder, wherein the simulatedoptical effect is based on data received from the first camera unit 1404and the second camera unit 1406; and in accordance with a determinationthat the set of one or more conditions is not met, enable display (e.g.,with display enabling unit 1420) of the preview in the digitalviewfinder without applying the simulated optical effect.

In some embodiments, prior to applying the simulated optical effect tothe preview in the digital viewfinder, the preview in the digitalviewfinder is not based on the second camera unit 1406. In someembodiments, the simulated optical effect is a simulated bokeh. In someembodiments, the simulated optical effect is applied differently todifferent portions of the preview in the digital viewfinder.

In some embodiments, a first portion of the preview depicts a firstobject, wherein the first object is at a first distance from theelectronic device, a second portion of the preview depicts a secondobject, wherein the second object is a second distance from theelectronic device, and applying the simulated optical effect to thepreview includes applying the simulated optical effect to the firstportion with a first magnitude and applying the simulated optical effectto the second portion with a second magnitude that is different from thefirst magnitude.

In some embodiments, the first camera unit 1404 has a first field ofview and the second camera unit 1406 has a second field of view, whereinthe first field of view and the second field of view overlap.

In some embodiments, the processing unit 1408 is further configured to:generate (e.g., with generating unit 1418) a depth map based on datareceived from the first camera unit 1404 and the second camera unit1406; and wherein the simulated optical effect is based on the depthmap.

In some embodiments, the electronic device automatically determines adistance to the subject. In some embodiments, a second condition of theset of one or more conditions is met when a focus distance of the firstcamera unit 1404 exceeds a minimum distance threshold.

In some embodiments, a third condition of the set of one or moreconditions is met when a focus distance of the first camera unit 1404does not exceed a maximum distance threshold. In some embodiments, afourth condition of the set of one or more conditions is met when thesubject is detected beyond a predetermined minimum distance from thedevice. In some embodiments, a fifth condition of the set of one or moreconditions is met when an amount of detected light exceeds a minimumlight threshold.

In some embodiments, a sixth condition of the set of one or moreconditions is met when an amount of detected light does not exceed amaximum light threshold.

In some embodiments, the determination of whether the set of one of moreconditions is met is based on data from the first camera unit 1404.

In some embodiments, the determination of whether the set of one of moreconditions is met is based on data from the second camera unit 1406.

In some embodiments, the processing unit 1408 is further configured to:in accordance with the determination that the set of one or moreconditions are not met: enable display (e.g., with display enabling unit1420), on the display unit 1402, of a graphical indication of acondition that is not met.

In some embodiments, the processing unit 1408 is further configured to:in response to detecting the subject, enable display (e.g., with displayenabling unit 1420), on the digital viewfinder on the display unit 1402,of one or more visual markers that identify the subject; and wherein afirst visual characteristic of the one or more visual markers is basedon whether the set of one or more conditions is met.

In some embodiments, the processing unit 1408 is further configured to:in accordance with the determination that the set of one or moreconditions is met, change (e.g., with changing unit 1412) the firstvisual characteristic of the one or more visual markers.

In some embodiments, the processing unit 1408 is further configured to:in accordance with detecting the subject, enable display (e.g., withdisplay enabling unit 1420), in the digital viewfinder on the displayunit 1402, of one or more visual markers identifying the subject; andwherein a second characteristic of the one or more visual markers isbased on a characteristic of the subject.

In some embodiments, the processing unit 1408 is further configured to:in accordance with failing to detect the subject, enable display (e.g.,with display enabling unit 1420), in the digital viewfinder on thedisplay unit 1402, of one or more visual markers that are centered inthe digital viewfinder.

In some embodiments, the processing unit 1408 is further configured to:in accordance with detecting a plurality of subjects, enable display(e.g., with display enabling unit 1420), in the digital viewfinder onthe display unit 1402, of a plurality of one or more visual markerscorresponding to the plurality of subjects.

In some embodiments, the processing unit 1408 is further configured to:in accordance with applying the simulated optical effect to the previewdisplayed in the digital viewfinder, enable display (e.g., with displayenabling unit 1420), on the display unit 1402, of a graphical indicationthat the simulated optical effect is being applied to the previewdisplayed in the digital viewfinder; and in accordance with displayingthe preview in the digital viewfinder without applying the simulatedoptical effect, forgo enabling display (e.g., with display enabling unit1420), on the display unit 1402, of the graphical indication that thesimulated optical effect is being applied to the preview displayed inthe digital viewfinder.

In some embodiments, the processing unit 1408 is further configured to:detect (e.g., with detecting unit 1416) user input requesting to capturean image; and in response to detecting the user input requesting tocapture the image: in accordance with the determination that the set ofone or more conditions is not met, capture (e.g., with capturing unit1414) the image without the simulated optical effect; in accordance withthe determination that the set of one or more conditions is met, capture(e.g., with capturing unit 1414) the image with the simulated opticaleffect.

In some embodiments, the processing unit 1408 is further configured to:while the preview is displayed in the digital viewfinder withoutapplying the simulated optical effect, detect (e.g., with detecting unit1416) a change in the scene in front of the camera units 1404-1406; andin response to detecting the change in the scene: in accordance with adetermination that the change in the scene has caused the set of one ormore conditions to be met, apply (e.g., with applying unit 1414) thesimulated optical effect to the preview displayed in the digitalviewfinder; and in accordance with a determination that the change inthe scene has not caused the set of one or more conditions to be met,maintain display (e.g., with display enabling unit 1420) of the previewin the digital viewfinder without applying the simulated optical effect.

The operations described above with reference to FIGS. 7A-7B are,optionally, implemented by components depicted in FIGS. 1A-1B or FIG.14. For example, displaying operation 702 and displaying operation 722,and dividing operation 706 are, optionally, implemented by event sorter170, event recognizer 180, and event handler 190. Event monitor 171 inevent sorter 170 detects a contact on touch-sensitive display 112, andevent dispatcher module 174 delivers the event information toapplication 136-1. A respective event recognizer 180 of application136-1 compares the event information to respective event definitions186, and determines whether a first contact at a first location on thetouch-sensitive surface corresponds to a predefined event or sub event,such as activation of an affordance on a user interface. When arespective predefined event or sub-event is detected, event recognizer180 activates an event handler 190 associated with the detection of theevent or sub-event. Event handler 190 optionally utilizes or calls dataupdater 176 or object updater 177 to update the application internalstate 192. In some embodiments, event handler 190 accesses a respectiveGUI updater 178 to update what is displayed by the application.Similarly, it would be clear to a person having ordinary skill in theart how other processes can be implemented based on the componentsdepicted in FIGS. 1A-1B.

In accordance with some embodiments, FIG. 15 shows an exemplaryfunctional block diagram of an electronic device 1500 configured inaccordance with the principles of the various described embodiments. Inaccordance with some embodiments, the functional blocks of electronicdevice 1500 are configured to perform the techniques described above.The functional blocks of the device 1500 are, optionally, implemented byhardware, software, or a combination of hardware and software to carryout the principles of the various described examples. It is understoodby persons of skill in the art that the functional blocks described inFIG. 15 are, optionally, combined or separated into sub-blocks toimplement the principles of the various described examples. Therefore,the description herein optionally supports any possible combination orseparation or further definition of the functional blocks describedherein.

As shown in FIG. 15, an electronic device 1500 includes a display unit1502 configured to display a graphic user interface, a first camera unit1504, a second camera unit 1506, and a processing unit 1508 coupled tothe display unit 1502, the first camera unit 1504, and the second cameraunit 1506. In some embodiments, the processing unit 1508 includes adetecting unit 1510, a zooming unit 1512, and a display enabling unit1514.

The processing unit 1508 is configured to: concurrently enable display(e.g., with display enabling unit 1514), on the display unit 1502, of: auser interface for capturing photos based on data received from thefirst camera unit 1504 that includes displaying a digital viewfinderwith a first magnification; and an affordance for modifying themagnification of photos captured by the device using one or more of thefirst and second camera units 1504-1506; detect (e.g., with detectingunit 1510) activation of the affordance; in response to detectingactivation of the affordance: cease to enable (e.g., with displayenabling unit 1514) display, on the display unit 1502, of the userinterface for capturing photos based on data received from the firstcamera unit 1504; and enable display (e.g., with display enabling unit1514), on the display unit 1502, of a user interface for capturingphotos based on data received from the second camera unit 1506 thatincludes displaying a digital viewfinder with a second magnificationthat is greater than the first magnification.

In some embodiments, the processing unit 1508 is further configured to:detecting (e.g., with detecting unit 1510) a user input in the digitalviewfinder; in response to detecting the user input: enable display(e.g., with display enabling unit 1514), on the display unit 1502, of azoom control; and perform a zoom of the digital viewfinder in accordancewith the user input.

In some embodiments, the user input corresponds to a pinch gesture inthe digital viewfinder. In some embodiments, the user input correspondsto a drag gesture in the digital viewfinder. In some embodiments, theuser input corresponds to a swipe gesture in the digital viewfinder. Insome embodiments, the zoom control includes a zoom indicator affordance.

In some embodiments, the zoom control includes a plurality of locationscorresponding to a plurality of magnification levels, and wherein afirst location of the plurality of locations corresponds to a firstoptical magnification level and a second location of the plurality oflocations corresponds to a second optical magnification level that isdifferent from the first optical magnification level.

In some embodiments, the processing unit 1508 is further configured to:detect (e.g., with detecting unit 1510) a gesture corresponding to thezoom control, the gesture having a direction and a length; in responseto detecting the gesture corresponding to the zoom control and inaccordance with the direction being a first direction, perform (e.g.,with zooming unit 1512) a zoom-out of the digital viewfinder at a speedbased on the magnitude of the gesture; and in response to detecting thegesture corresponding to the zoom control and in accordance with thedirection being a second direction different from the first direction,perform (e.g., with zooming unit 1512) a zoom-in of the digitalviewfinder at a speed based on the magnitude of the gesture.

In some embodiments, the affordance for modifying the magnification isdisplayed in accordance with a determination that the electronic deviceincludes camera units 1504-1506 with overlapping fields of view.

In some embodiments, the processing unit 1508 is further configured to:detect (e.g., with detecting unit 1514) a second activation of theaffordance for modifying the magnification; in response to detecting thesecond activation of the affordance for modifying the magnification:cease to enable display (e.g., with display enabling unit 1514), on thedisplay unit 1502, of the user interface for capturing photos based ondata received from the second camera unit 1506; and enable display(e.g., with display enabling unit 1514), on the display unit 1502, ofthe user interface for capturing photos based on data received from thefirst camera unit 1504 that includes displaying the digital viewfinderwith the first magnification.

In some embodiments, the displayed zoom control fades out in response todetecting an input lift-off signal associated with the user input in thedigital viewfinder and wherein the displayed affordance for modifyingthe magnification does not fade out in response detecting the inputlift-off signal associated with the user input in the digitalviewfinder.

In some embodiments, displaying, on the display unit 1502, the zoomcontrol includes replacing display of the affordance for modifying themagnification with display of the zoom control.

The operations described above with reference to FIG. 9 are, optionally,implemented by components depicted in FIGS. 1A-1B or FIG. 15. Forexample, displaying operation 902 and detecting operation 908 are,optionally, implemented by event sorter 170, event recognizer 180, andevent handler 190. Event monitor 171 in event sorter 170 detects acontact on touch-sensitive display 112, and event dispatcher module 174delivers the event information to application 136-1. A respective eventrecognizer 180 of application 136-1 compares the event information torespective event definitions 186, and determines whether a first contactat a first location on the touch-sensitive surface corresponds to apredefined event or sub event, such as activation of an affordance on auser interface. When a respective predefined event or sub-event isdetected, event recognizer 180 activates an event handler 190 associatedwith the detection of the event or sub-event. Event handler 190optionally utilizes or calls data updater 176 or object updater 177 toupdate the application internal state 192. In some embodiments, eventhandler 190 accesses a respective GUI updater 178 to update what isdisplayed by the application. Similarly, it would be clear to a personhaving ordinary skill in the art how other processes can be implementedbased on the components depicted in FIGS. 1A-1B.

In accordance with some embodiments, FIG. 16 shows an exemplaryfunctional block diagram of an electronic device 1600 configured inaccordance with the principles of the various described embodiments. Inaccordance with some embodiments, the functional blocks of electronicdevice 1600 are configured to perform the techniques described above.The functional blocks of the device 1600 are, optionally, implemented byhardware, software, or a combination of hardware and software to carryout the principles of the various described examples. It is understoodby persons of skill in the art that the functional blocks described inFIG. 16 are, optionally, combined or separated into sub-blocks toimplement the principles of the various described examples. Therefore,the description herein optionally supports any possible combination orseparation or further definition of the functional blocks describedherein.

As shown in FIG. 16, an electronic device 1600 includes a display unit1602 configured to display a graphic user interface, one or more cameraunits 1604, and a processing unit 1606 coupled to the display unit 1602and the one more camera units 1604. In some embodiments, the processingunit 1606 includes a zooming unit 1608, a detecting unit 1610, and adisplay enabling unit 1612.

The processing unit 1606 is configured to: enable display (e.g., withdisplay enabling unit 1612), on the display unit 1602, of: a digitalviewfinder based on data received from the one or more camera units1604; while enabling display of the digital viewfinder, detect a gesturethat progresses at a gesture rate, the gesture corresponding to aninstruction to zoom the digital viewfinder from a first magnificationlevel to a third magnification level; in response to detecting thegesture, zoom (e.g., with zooming unit 1608) the digital viewfinder fromthe first magnification level to a second magnification level and fromthe second magnification level to a third magnification level,including: during a first portion of the gesture, zoom (e.g., withzooming unit 1608) the digital viewfinder at a first rate that is slowerthan the gesture rate at which the gesture is progressing; and during asecond portion of the gesture that occurs after the first portion of thegesture, zoom (e.g., with zooming unit 1608) the digital viewfinder at asecond rate that is faster than the gesture rate at which the gesture isprogressing.

In some embodiments, during the first portion of the gesture: thegesture progresses from a first state to a second state, wherein thefirst state corresponds to the first magnification level and the secondstate corresponds to the second magnification level that is higher thanthe first magnification level; and zooming the digital viewfinder fromthe first magnification level to an intermediate magnification levelthat is higher the first magnification level and lower than the secondmagnification level; and during the second portion of the gesture: thegesture progresses from the second state to a third state, wherein thethird state corresponds to a third magnification level that is higherthan the second magnification level and the intermediate magnificationlevel; and zooming the digital viewfinder from the intermediatemagnification level that is lower than the second magnification level tothe third magnification level.

In some embodiments, the first portion of the gesture includes movementof one or more contacts on a touch-sensitive surface and the rate atwhich the first portion of the gesture is progressing is based on a rateof movement of the one or more contacts; the second portion of thegesture includes continued movement of the one or more contacts on thetouch-sensitive surface and the rate at which the second portion of thegesture is progressing is based on a rate of movement of the one or morecontacts; during the second portion of the gesture, the movement of theone or more contacts ceases while the one or more contacts continue tobe detected on the touch-sensitive surface; and the method includingcontinuing to zoom the digital viewfinder after the movement of the oneor more contacts has ceased.

In some embodiments, continuing to zoom the digital viewfinder after themovement of the one or more contacts has ceased includes graduallydecreasing the rate at which the magnification level is increasing.

In some embodiments, zooming the digital viewfinder at a rate that isslower than the gesture rate at which the gesture is progressingincludes gradually increasing the rate at which the magnification levelincreases when the contact moves away from a starting position on thetouch-sensitive surface.

In some embodiments, the processing unit 1606 is further configured to:concurrently enable display (e.g., with display enabling unit 1612), onthe display unit 1602, with the digital viewfinder, of: a zoom control,wherein a plurality of positions along the zoom control correspond to aplurality of magnification levels; and a zoom indicator affordance; andin response to detecting the gesture, update display (e.g., with displayenabling unit 1612) of the zoom indicator affordance to transition, atthe gesture rate, from a first position of the plurality of positions toa second position of the plurality of positions, wherein the firstposition corresponds to the first magnification level of the pluralityof magnification levels and the second position corresponds to the thirdmagnification level of the plurality of magnification levels.

In some embodiments, zooming the digital viewfinder from the firstmagnification level to the third magnification level includes zoomingthe digital viewfinder while smoothing the rate at which the zoomingoccurs relative to the rate at which the gesture progresses, by limitingthe rate of the zoom or the rate of change of the rate of the zoom.

In some embodiments, during a third portion of the gesture that occursbefore the first portion of the gesture, zoom the digital viewfinder ata third rate that corresponds to the gesture rate at which the gestureis progressing.

In some embodiments, at a first time during the first portion of thegesture, zooming the digital viewfinder at the first rate while a firstgesture rate of the gesture exceeds a threshold gesture rate; and at asecond time during the second portion of the gesture, zooming thedigital viewfinder at the first rate while a second gesture rate of thegesture does not exceed the threshold gesture rate.

In some embodiments, the processing unit 1606 is further configured to:subsequent to detecting the gesture and subsequent to zooming thedigital viewfinder from the first magnification level to the thirdmagnification level: detect (e.g., with detecting unit 1610) a tapgesture at a location corresponding to a third position of the pluralityof positions, wherein the third position corresponds to a fourthmagnification level of the plurality of magnification levels; and inresponse to detecting the tap gesture, zoom (e.g., with zooming unit1608) the digital viewfinder from the third magnification level to thefourth magnification level.

In some embodiments, the processing unit 1606 is further configured to:in response to detecting the gesture, enable display (e.g., with displayenabling unit 1612), on the display unit 1602, of a graphicalmagnification level indicator that indicates a current magnificationlevel.

In some embodiments, the processing unit 1606 is further configured to:after the graphical magnification level indictor has been displayed fora predetermined period of time after zooming of the digital viewfinderhas ceased, cease to enable display (e.g., with display enabling unit1612), on the display unit 1602, of the graphical magnification levelindictor.

In some embodiments, the processing unit 1606 is further configured to:after the zoom control has been displayed for a second predeterminedperiod of time after zooming of the digital viewfinder has ceased, ceaseto enable display (e.g., with display enabling unit 1612), on thedisplay unit 1602, of the zoom control.

In some embodiments, the processing unit 1606 is further configured to:enable display (e.g., with display enabling unit 1612), on the displayunit 1602, of the zoom control while enabling display of the digitalviewfinder.

In some embodiments, the processing unit 1606 is further configured to:detect (e.g., with detecting unit 1610) a pinch gesture on the digitalviewfinder; in response to detecting the pinch gesture: zoom (e.g., withzooming unit 1608) the digital viewfinder at a rate corresponding to arate at which the pinch gesture is progressing throughout the pinchgesture.

In some embodiments, the plurality of positions corresponding to theplurality of magnification levels are positioned along the zoom controlsuch that the magnification levels are not distributed linearly.

In some embodiments, a distance along the zoom control between thelowest magnification level and a magnification level that is double thelowest magnification level extends more than 25% of a total distance ofthe zoom control and less than 45% of the total distance of the zoomcontrol.

In some embodiments, locations along the zoom control corresponding tooptical magnification levels are visually distinguished from locationsalong the zoom control corresponding to non-optical magnificationlevels. In some embodiments, the third position of the plurality ofpositions corresponds to an optical magnification level. In someembodiments, displaying the zoom control includes displaying the zoomcontrol vertically on the display. In some embodiments, displaying thezoom control includes displaying the zoom control horizontally on thedisplay.

The operations described above with reference to FIG. 11 are,optionally, implemented by components depicted in FIGS. 1A-1B or FIG.16. For example, displaying operation 1102 and detecting operation 1104are, optionally, implemented by event sorter 170, event recognizer 180,and event handler 190. Event monitor 171 in event sorter 170 detects acontact on touch-sensitive display 112, and event dispatcher module 174delivers the event information to application 136-1. A respective eventrecognizer 180 of application 136-1 compares the event information torespective event definitions 186, and determines whether a first contactat a first location on the touch-sensitive surface corresponds to apredefined event or sub event, such as activation of an affordance on auser interface. When a respective predefined event or sub-event isdetected, event recognizer 180 activates an event handler 190 associatedwith the detection of the event or sub-event. Event handler 190optionally utilizes or calls data updater 176 or object updater 177 toupdate the application internal state 192. In some embodiments, eventhandler 190 accesses a respective GUI updater 178 to update what isdisplayed by the application. Similarly, it would be clear to a personhaving ordinary skill in the art how other processes can be implementedbased on the components depicted in FIGS. 1A-1B.

In accordance with some embodiments, FIG. 17 shows an exemplaryfunctional block diagram of an electronic device 1700 configured inaccordance with the principles of the various described embodiments. Inaccordance with some embodiments, the functional blocks of electronicdevice 1700 are configured to perform the techniques described above.The functional blocks of the device 1700 are, optionally, implemented byhardware, software, or a combination of hardware and software to carryout the principles of the various described examples. It is understoodby persons of skill in the art that the functional blocks described inFIG. 17 are, optionally, combined or separated into sub-blocks toimplement the principles of the various described examples. Therefore,the description herein optionally supports any possible combination orseparation or further definition of the functional blocks describedherein.

As shown in FIG. 17, an electronic device 1700 includes a display unit1702 configured to display a graphic user interface and a processingunit 1704 coupled to the display unit 1702. In some embodiments, theprocessing unit 1706 includes a determining unit 1706, a zooming unit1708, detecting unit 1710, and a display enabling unit 1712.

The processing unit 1704 is configured to: enable display (e.g., withdisplay enabling unit 1702), on the display unit 1702, of a digitalviewfinder; detect (e.g., with detecting unit 1710) a gesturecorresponding to an instruction to zoom the digital viewfinder from afirst magnification level to a second magnification level different fromthe first magnification level; determine whether a set of one or moreconditions has been met, wherein a first condition of the set of one ormore conditions is met when the difference between the secondmagnification level and a third magnification level is less than apredetermined threshold; and in accordance with a determination that theset of one or more conditions has been met, zoom (e.g., with zoomingunit 1708) the digital viewfinder from the first magnification level tothe third magnification level.

In some embodiments, the processing unit 1704 is further configured to:in accordance with a determination that the set of one or moreconditions has not been met, zoom (e.g., with zooming unit 1708) thedigital viewfinder from the first magnification level to the secondmagnification level.

In some embodiments, a second condition of the set of one or moreconditions is met when the second magnification level is less than thethird magnification level.

In some embodiments, a third condition of the set of one or moreconditions is met when the second magnification level is more than thethird magnification level.

In some embodiments, a fourth condition of the set of one or moreconditions is met when the absolute difference between the firstmagnification level and the second magnification level is greater than asecond predetermined threshold level.

In some embodiments, the second magnification level corresponds to adigital magnification level and wherein the third magnification levelcorresponds to an optical magnification level.

In some embodiments, the electronic device includes a first camera and asecond camera, and wherein the displayed digital viewfinder is based ondata received from at least one of the first camera and the secondcamera.

In some embodiments, the digital viewfinder is based on data receivedfrom the first camera when the digital viewfinder is zoomed to thesecond magnification level and wherein the digital viewfinder is basedon data received from the to the second camera when the digitalviewfinder is zoomed to the third magnification level.

In some embodiments, the processing unit 1704 is further configured to:prior to detecting the gesture, concurrently enable display (e.g., withdisplay enabling unit 1702), on the display unit 1702, with the digitalviewfinder, of: a zoom control, wherein a plurality of positions alongthe zoom control correspond to a plurality of magnification levels; azoom indicator affordance at a first position of the plurality ofpositions along the zoom control corresponding to the firstmagnification level; and a target zoom point at a third position of theplurality of positions along the zoom control that is different from thefirst position, wherein the third position corresponds to the thirdmagnification level; and wherein a second position of the plurality ofpositions along the zoom control corresponds to the second magnificationlevel.

In some embodiments, the processing unit 1704 is further configured to:in accordance with a determination that the set of one or moreconditions has been met, update display (e.g., with display enablingunit 1702) of the zoom indicator affordance from the first position tothe third position corresponding to the third magnification level.

In some embodiments, the processing unit 1704 is further configured to:in accordance with a determination that the set of one or moreconditions has not been met, update display (e.g., with display enablingunit 1702) of the zoom indicator affordance from the first position tothe second position corresponding to the second magnification level.

In some embodiments, the processing unit 1704 is further configured to:in accordance with the determination that the set of one or moreconditions has been met, update display (e.g., with display enablingunit 1702) of the target zoom point to expand to encapsulate the zoomindicator affordance when the zoom indicator affordance is displayed atthe second position.

In some embodiments, a fifth condition of the set of one or moreconditions is met when the electronic device detects an input lift-offsignal associated with the gesture.

In some embodiments, the first camera has a first field of view and thesecond camera has a second field of view, wherein the first field ofview and the second field of view overlap, wherein the first field ofview and the second field of view are different, and wherein zooming thedigital viewfinder from the first magnification level to the thirdmagnification level includes: visually compensating for the differencebetween the first field of view and the second field of view to reduceshifting of an image displayed in the digital viewfinder.

In some embodiments, the processing unit 1704 is further configured to:while the magnification level of the digital viewfinder is a fourthmagnification level that is different from the third magnificationlevel, detect (e.g., with detecting unit 1710) a tap input at a locationthat corresponds to a respective portion of the zoom control; and inresponse to detecting the tap input: in accordance with a determinationthat the respective portion of the zoom control corresponds to the thirdmagnification level, zoom (e.g., with zooming unit 1708) the digitalviewfinder to the third magnification level; and in accordance with adetermination that the respective portion of the zoom controlcorresponds to a magnification level that is different from the thirdmagnification level, maintain (e.g., with display enabling unit 1712)the digital viewfinder at the fourth magnification level.

The operations described above with reference to FIG. 13 are,optionally, implemented by components depicted in FIGS. 1A-1B or FIG.17. For example, displaying operation 1302, detecting operation 1304,and determining operation 1306 are, optionally, implemented by eventsorter 170, event recognizer 180, and event handler 190. Event monitor171 in event sorter 170 detects a contact on touch-sensitive display112, and event dispatcher module 174 delivers the event information toapplication 136-1. A respective event recognizer 180 of application136-1 compares the event information to respective event definitions186, and determines whether a first contact at a first location on thetouch-sensitive surface corresponds to a predefined event or sub event,such as activation of an affordance on a user interface. When arespective predefined event or sub-event is detected, event recognizer180 activates an event handler 190 associated with the detection of theevent or sub-event. Event handler 190 optionally utilizes or calls dataupdater 176 or object updater 177 to update the application internalstate 192. In some embodiments, event handler 190 accesses a respectiveGUI updater 178 to update what is displayed by the application.Similarly, it would be clear to a person having ordinary skill in theart how other processes can be implemented based on the componentsdepicted in FIGS. 1A-1B.

FIGS. 18A-18AN illustrate exemplary devices and user interfaces forvarious magnification (e.g., zoom) techniques, in accordance with someembodiments. The user interfaces in these figures are used to illustratevarious magnification processes described below, including the processesin FIGS. 19A-19B.

FIG. 18A illustrates an exemplary electronic device 1800 with a firstcamera 1802 and a second camera 1804 that are located, for example, onthe rear of the electronic device. In some examples, the first camera1802 and the second camera 1804 have fixed, but different, focallengths. In some examples, the focal length, field of view, and/oroptical magnification properties of the optical system is fixed for eachof the cameras (e.g., 1802, 1804). In some embodiments, in addition tohaving different fixed focal lengths, the cameras (e.g., 1802, 1804)have different fixed fields of view and different fixed opticalmagnification properties.

In some embodiments, the first camera 1802 has a first field of view andthe second camera 1804 has a second field of view, wherein the firstfield of view and the second field of view overlap. In some examples,the first camera 1802 and the second camera 1804 are spaced apart sothat a parallax between images detected (e.g., captured) by the camerasis used to determine distances to objects represented by differentportions of a digital viewfinder displaying image data from one or moreof camera 1802 and camera 1804. In some embodiments, the first camera1802 and the second camera 1804 are located on a surface of theelectronic device 1800 and the optical axes of the cameras 1802 and 1804are arranged such that they are parallel or substantially parallel. Insome examples, the first camera 1802 and the second camera 1804 captureoverlapping fields of view, for example, at least 50% overlapping, atleast 90% overlapping, or more. In some examples, the first camera 1802has a wider field of view than the second camera 1804. In some examples,the second camera has a wider field of view than the first camera. Whena wide-angle camera (e.g., a camera with a wide-angle lens) has a widerfield of view than a telephoto camera (e.g., a camera with a telephotolens), at a 1× magnification of the wide-angle camera objects appearfurther away than at a 1× magnification of the telephoto camera. If thewide-angle camera and the telephoto camera have overlapping fields ofview such that the field of view of the telephoto camera isapproximately centered on the field of view of the wide angle camera, animage captured with the telephoto camera at a 1× magnification levelwill, in some circumstances (e.g., where the subject of the image is atleast 1 meter away), appear to be an optical zoom of a correspondingimage captured with the wide-angle camera at a 1× magnification level.

FIG. 18B illustrates the front of exemplary electronic device 1800including display 1808 with one or more input devices and shutter button1816. The electronic device 1800 concurrently displays, on the display1808, a digital viewfinder 1806 for capturing media with the one or morecameras 1802, 1804 at a first magnification level. In some embodiments,an object or a subject 1810 is displayed in the viewfinder 1806 at afirst magnification level. In some embodiments, the magnification levelis represented using an alphanumeric system 1818. In some embodiments,the magnification level is represented using images, icons, or pictures.In some embodiments, the digital viewfinder 1806 includes live ornear-live preview images.

As further illustrated in FIG. 18B, the electronic device displays, onthe display 1808 a magnification adjustment affordance 1812. In someexamples, the magnification adjustment affordance 1812 is represented asa 1×/2× label, an icon, or a textual representation indicating themagnification level.

As illustrated in FIGS. 18B-18D, in some embodiments, the electronicdevice receives a tap gesture on the one or more input devices (e.g., atouch-sensitive surface, a touch-sensitive display) to transition from a1× (e.g., optical) magnification to a 2× (e.g., optical) magnification.In some embodiments, as shown in FIG. 18C, while concurrently displayingthe digital viewfinder 1806 and the magnification adjustment affordance1812, the electronic device 1800 detects via the one or more inputdevices, a first gesture (e.g., tap gesture 1820-1A) at a locationcorresponding to the magnification adjustment affordance 1812. In someexamples, the first gesture is a swipe, tap, or tap and hold. Asillustrated in FIG. 18C, the first type of input is a tap gesture (e.g.,tap gesture 1820-1A).

In some embodiments, in accordance with and, for example, in response toa determination that the first gesture (e.g., tap gesture 1820-1A) is ofa first type (e.g., a tap gesture), the electronic device 1800 preparesto capture media with the one or more cameras 1802 and 1804 at a second,optionally predefined, magnification level (e.g., a 2× magnificationlevel represented by indicator 1818 of FIG. 18D) different from thefirst magnification level (e.g., a 1× magnification level represented byindicator 1818 of FIG. 18B). In some examples, the electronic device1800 toggles between predetermined magnification levels. Toggling allowsthe user to select a specific magnification level and for the digitalviewfinder to transition to the selected magnification level. In someexamples, the electronic device selects the second magnification level(e.g., a 2× magnification level represented by indicator 1818 of FIG.18D) without regard to a magnitude of the first gesture (e.g., tapgesture 1820-1A), as long as the gesture is the first type of gesture(e.g., a tap gesture). Thus, in some examples, the duration, movement,and/or the intensity of the contact do not change which magnificationlevel is selected as the second magnification level as long as thecontact is still determined to be a tap gesture. In some embodiments,the electronic device 1800 preparing to capture media with the one ormore cameras 1802 and 1804 at the second magnification level includesupdating display of the digital viewfinder 1806, for example, using datareceived from the camera 1802 or 1804 of FIG. 18A, to show the previewat the second magnification level (e.g., a 2× magnification levelrepresented by indicator 1818 of FIG. 18D).

As illustrated in FIG. 18E-18H, in some embodiments, a swipe input on amagnification adjustment affordance results in preparing to capturemedia at a dynamically-selected magnification level. In one embodiment,in accordance with and, for example, in response to a determination thatthe first gesture (e.g., gesture 1820-1B) is of a second type (e.g., aswipe gesture) different from the first type (e.g., a tap gesture or atap), the electronic device 1800 prepares to capture media with the oneor more cameras 1802 and 1804 at a dynamically-selected magnificationlevel (e.g., a 7.4× magnification level represented by indicator 1818 ofFIGS. 18F-H). In some examples, the dynamically-selected magnificationlevel is different from the first magnification level (e.g., a 1×magnification level represented by indicator 1818 of FIG. 18B. In someexamples, the dynamically-selected magnification level (e.g., a 7.4×magnification level represented by indicator 1818 of FIG. 18G), isdifferent from the second magnification level (e.g., a 2× magnificationlevel represented by indicator 1818 of FIG. 18D). In some embodiments,the dynamically-selected magnification level (e.g., a 7.4× magnificationlevel represented by indicator 1818 of FIG. 18G), is selected based on amagnitude (e.g., distance 1822-A of FIG. 18E) of the first gesture(e.g., 1820-1B of FIG. 18E).

As illustrated in FIGS. 18F-18H, in some embodiments, a zoom control1824 transitions onto the display 1808 as a result of a gesture (e.g.,gesture 1820-1B) of the second type (e.g., a swipe gesture). In someembodiments, as a result of the first gesture (e.g., swipe gesture1820-1B) being a gesture of a second type (e.g., a swipe gesture), thezoom control 1824 gradually slides onto the screen to reveal the fulldial 1824 of FIG. 18H. In some examples, the zoom control 1824 is adial. In some examples, the zoom control (e.g., the entire/partial zoomcontrol dial) gradually appears onto the display 1808 by changing color,shape, hue, brightness or translucence. In some examples, the zoomcontrol transition includes changing the zoom control's position and/orvisual characteristic. In some examples, the swipe gesture correspondsto rotation of the zoom control 1824. Thus, in response to theelectronic device 1800 detecting a user's finger swiping, the electronicdevice rotates the displayed zoom control 1824 and updates themagnification level based on a characteristic of the first gesture, suchas updating the magnification level based on the magnitude 1822-A, forexample, distance, of the swipe gesture. In some examples, longer swipegestures will result in a greater change of the magnification level thanshorter swipe gestures. In some examples, faster swipe gestures resultin a greater change of the magnification level than slower swipegestures.

As illustrated in FIG. 18E-18F, in some embodiments, a change in themagnification level corresponds to the magnitude (e.g., 1822-A) of thegesture (e.g., 1820-1B). In some embodiments, in accordance with adetermination that the magnitude of the first gesture (e.g., 1820-1B) isa first magnitude (e.g., 1822-A), the dynamically-selected magnificationlevel is a first dynamically-selected magnification level (e.g., a 7.4×magnification level represented by indicator 1818 of FIG. 18G),different from the first magnification level (e.g., a 1× magnificationlevel represented by indicator 1818 of FIG. 18B). In some embodiments,in accordance with a determination that the magnitude of the firstgesture is a second magnitude that is different from the first magnitude(e.g., 1822-A), the dynamically-selected magnification level is a seconddynamically-selected magnification level (e.g., 7.8× magnificationlevel) different from the first magnification level (e.g., a 1×magnification level represented by indicator 1818 of FIG. 18B) and thefirst dynamically-selected magnification level (e.g., a 7.4×magnification level represented by indicator 1818 of FIG. 18G). In someexamples, a greater magnitude input, for example a longer swipe, on thetouch-sensitive surface will result in a greater magnification changethan a shorter magnitude input, for example a shorter swipe. In someembodiments, the magnitude of the magnification change is determinedbased on a speed or direction of movement of the input (e.g., asdescribed in greater detail below with reference to method 2300).

As further illustrated in FIGS. 18F-18H, in some embodiments, a swipeinput on a magnification adjustment affordance results in the display ofthe zoom control. In some embodiments, in accordance with and, forexample, in response to the determination that the first gesture (e.g.,swipe gesture 1820-1B) is of the second type (e.g., a swipe gesture)different from the first type (e.g., a tap gesture), the electronicdevice 1800, displays, on the display, a zoom control 1824. In someembodiments, in accordance with and, for example, in response to thedetermination that the first gesture (e.g., tap gesture 1820-1A) is ofthe first type (e.g., a tap gesture), the electronic device foregoesdisplaying the zoom control for selecting a dynamically-selectedmagnification level from a plurality of magnification levels (e.g., donot display 1824 of FIG. 18F).

As further illustrated in FIGS. 18F-18H, in some embodiments, when thezoom control is displayed, the magnification adjustment affordance'sposition is shifted. In some embodiments, the electronic device 1800displaying, on the display 1808, the zoom control 1824 further includesshifting a display location (e.g., 1826 is closer to the middle of thedisplay in FIG. 18H as compared to FIG. 18G), on the display 1808, ofthe magnification adjustment affordance 1826 away from an edge of thedisplay (or touchscreen display screen) toward a center of the display1808. In some examples, if the device is in a portrait mode or is heldvertically, the affordance would appear to shift up. In some examples,if the device is in a landscape mode or is held horizontally, theaffordance would appear to shift left, toward the left edge of thedisplay device.

As further illustrated in FIGS. 18F-18H, in some embodiments, the sizeof the magnification adjustment affordance (e.g., affordance 1826)changes as it becomes a part of the zoom control (e.g., it reduces insize). In some embodiments, the electronic device 1800 displaying, onthe display 1808, the zoom control 1824 further includes reducing adisplay size of the magnification adjustment affordance (e.g., 1812 ofFIG. 18D becomes 1826 of FIG. 18F). In some embodiments, themagnification adjustment affordance 1812 is constant in size and doesnot reduce in size as it becomes part of the zoom control. In someembodiments, the magnification adjustment affordance 1812 changes avisual property (e.g., color, contrast, hue, transparency, shape) as itbecomes part of the zoom control 1824.

As further illustrated in FIGS. 18F-18H, in some embodiments, the zoomcontrol 1824 is represented in the viewfinder 1806 as a dial 1824. Insome embodiments, the electronic device 1800 displaying, on the display,the zoom control 1824 further includes: displaying a portion of a zoomcontrol dial 1824. In some examples the zoom control is a displayed as awheel, dial, semi-dial, a portion of a dial, or slider. In someexamples, the zoom control displays various magnification levels atwhich media is or will be, optionally, captured. In some examples, therepresentations of the various magnification levels are distributedalong the zoom control 1824. In some examples, the representations ofthe various magnification levels change (e.g., rotate) when the zoomcontrol rotates.

As further illustrated in FIGS. 18F-18H, in some embodiments, when thezoom control is initially displayed, it increases in size. In someembodiments, displaying the zoom control 1824 includes sliding the zoomcontrol onto the display 1808. In some examples, displaying the zoomcontrol 1824 includes displaying the zoom control 1824 at a first sizeand then increasing the zoom control 1824 to a second size larger thanthe first size.

As illustrated in FIGS. 18I-18L, in some embodiments, after a liftoffevent (e.g., the user lifts his/her finger) with the touch sensitivesurface, the zoom control 1824 will shrink over time and only theaffordance 1812 will be displayed. In some embodiments, themagnification adjustment affordance shifts down (e.g., away from acenter of the display 1808). In some embodiments, in accordance with theelectronic device 1800 not detecting, via the one or more input devices,input at any location corresponding to the zoom control 1824 for apredetermined period of time, the electronic device slides the displayof the magnification adjustment affordance 1818 toward the edge of thedisplay (or device 1800) and away from the center of the display. Insome embodiments, a predetermined period of time is a predeterminedperiod of time after lift-off or after the user breaks contact with thetouch screen. In some embodiments, if the device is in a portrait modeor is held vertically, the magnification adjustment affordance appearsto shift (e.g., slide) down. In some embodiments, if the device is in alandscape mode or is held horizontally, the magnification adjustmentaffordance 1818 appears to shift right, away from the left edge of thedisplay device.

As further illustrated in FIG. 18I-18L, in some embodiments, the zoomcontrol 1824 fades as it shrinks. In some embodiments, in accordancewith the electronic device 1800 not detecting, via the one or more inputdevices, input at any location corresponding to the zoom control 1824for a predetermined period of time (e.g., after a predetermined periodof time after lift-off, after the user breaks contact with the touchscreen), the electronic device ceases to display of the zoom control1824. The transition from FIG. 18H to 18I illustrates a user breakingcontact with the input device. In some embodiments, the zoom control1824 slides off of the display 1808, for example, away from the centerof the display and off the edge of the display, and/or fades away. FIG.18L illustrates the result of the zoom control shrinking and only themagnification adjustment affordance 1812 remains. In some embodiments,the zoom control 1824 changes color, translucence, hue, contract, and/orshape while it disappears from the display.

As illustrated in FIGS. 18M-18O, in some embodiments, a pinch gesture onthe input device will result in a magnification command withoutdisplaying the zoom control 1824. In some embodiments, while theelectronic device 1800 displays, on the display 1808, the digitalviewfinder 1806 (e.g., that includes live or near-live preview images)for capturing media with the one or more cameras 1802, 1804 at a fourthmagnification level and not displaying, on the display, the zoom control1824, the electronic device detects, via the one or more input devices,a fourth gesture 1820A and 1820B (e.g., a pinch, or de-pinch, gesture)at a location corresponding to the digital viewfinder 1806.

As further illustrated in FIGS. 18M-18O, in some embodiments, inaccordance with (and, for example, in response to) the electronic device1800 determining that the fourth gesture (e.g., 1820A and 1820B) is of afourth type (e.g., a pinch gesture), the electronic device 1800 preparesto capture media with the one or more cameras 1802, 1804 at a seconddynamically-selected magnification level (e.g., a magnification levelillustrated in FIG. 18N) different from the fourth magnification level.In some embodiments, the respective magnification level is selectedbased on a magnitude (e.g., speed, acceleration, intensity, magnitude ofdisplacement) of the fourth gesture (e.g., pinch or depinch gesture1820A and 1820B). Additionally, in some embodiments, the electronicdevice 1800, forgoes displaying, on the display 1808, the zoom control1824.

As further illustrated in FIGS. 18M-18O, in some examples, the device1800 concurrently displays, with the digital viewfinder 1806, themagnification adjustment affordance 1812 with the current magnificationlevel (e.g., 1818, illustrating the magnification level) for capturingmedia with the one or more cameras 1802, 1804 and the currentmagnification level for the viewfinder 1806. In some examples, thecurrent magnification level is represented as a 1×/2× affordance label,an icon, textual representation indicating the magnification level, orimage. In some embodiments, in accordance with and, optionally, inresponse to the electronic device 1800 detecting the fourth gesture, theelectronic device 1800 updates the displayed current magnification level(e.g., 1818, illustrating the magnification level) for capturing mediawith the one or more cameras 1802, 1804 and the current magnificationlevel for the viewfinder 1806.

As illustrated in FIGS. 18P-18Q, in some embodiments, when a gesture1820-1A (e.g., tap gesture) is detected at a location corresponding tothe magnification adjustment affordance 1812, the electronic device 1800prepares to capture media with the one or more cameras 1802, 1804 at apredetermined magnification level. In some embodiments, thepredetermined magnification level corresponds to the lowest, optionallyoptical, magnification level available (e.g., 1×). In some embodiments,the predetermined magnification level corresponds to the highest,optionally optical, magnification level (e.g., 10×).

As illustrated in FIGS. 18R-18U, in some embodiments, when the firstgesture (e.g., 1820-1C) is determined to be a tap and hold, theelectronic device 1800 displays, on the display 1808, a zoom control forselecting a dynamically-selected magnification level from a plurality ofmagnification levels. In some embodiments, in accordance with adetermination that the first gesture (e.g., 1820-1C) is of a third type(e.g., tap-and-hold gesture) different from the first type (e.g., tapgesture) and the second type (e.g., swipe gesture), the electronicdevice displays, on the display 1808, a zoom control 1824 for selectinga dynamically-selected magnification level from a plurality ofmagnification levels. In some embodiments, a tap and hold gesture isdetermined when the electronic device detects an input for greater thana predetermined amount of time. In some embodiments, as illustrated inFIGS. 18R-18U, the representation of the magnification level 1818 (e.g.,1×) remains constant while the zoom control 1824 slides onto the display1808. In some embodiments, as illustrated in FIGS. 18R-18U, themagnification level remains constant while the zoom control 1824 slidesonto the display 1808. In some embodiments, while the zoom control issliding onto the display 1800, the magnification level will adjust ifthe electronic device detects a movement of the input.

As illustrated in FIGS. 18V-18Y, in some embodiments, if the zoomcontrol dial 1824 is displayed on the display 1808 and the electronicdevice 1800 detects a swipe gesture at a location corresponding to thezoom control dial 1824, the zoom control dial will appear to rotate andthe locations of the magnification levels displayed within the zoomcontrol will change accordingly. In some embodiments, while displayingthe zoom control 1824 and while the electronic device 1800 is preparedto capture media with the one or more cameras 1802, 1804 at a thirdmagnification level (e.g., a 1× magnification level represented byindicator 1818 of FIG. 18V), the electronic device 1800 detects, via theone or more input devices, a second gesture (e.g., swipe gesture 1821-1)at a location corresponding to the zoom control 1824. In someembodiments, in accordance with and, for example, in response to adetermination that the second gesture (e.g., 1821-1) is of the secondtype (e.g., a swipe gesture), the electronic device 1800 rotates displayof the zoom control 1824 (e.g., rotating by an amount that correspondsto a magnitude 1822-B of the second gesture). In some embodiments, theelectronic device prepares to capture media with the one or more camerasat a fourth magnification level (e.g., a 10× magnification levelrepresented by indicator 1818 of FIG. 18Z) (e.g., based on a magnitude1822-B of the second gesture 1821-1) that is different from the thirdmagnification level. In some examples, the zoom control dial 1824 andthe magnification levels displayed within appear to rotate, like awheel. In some examples, the zoom control dial 1824 appears to rotate ata rate that is accelerated based on one or more of: a speed of movementof the contact, a direction of movement of the contact, and/or aproximity of the contact to an edge of a touch-sensitive surface (e.g.,as described in greater detail with reference to FIGS. 22A-22J and23A-23B).

As further illustrated in FIGS. 18Z-18AA, in some embodiment, theelectronic device 1800 will determine the magnitude of a swipe gesture.Based on the magnitude (e.g. 1822-C) of the swipe gesture (1821-2), theelectronic device will rotate the zoom control on the display 1808,corresponding to the magnitude of the swipe gesture. In some examples, alonger swipe gesture will result in the zoom control appearing to rotatemore than a shorter swipe gesture.

As further illustrated in FIGS. 18V-18Y, the electronic device 1800performs smooth, cinematic-style zooms with reduced (or eliminated)sudden zooms in the viewfinder (and in recorded videos), even when themagnification adjustment affordance is already at the desiredmagnification level. For example, as illustrated in FIGS. 18V-18Y, eventhough the magnification level displayed in the magnification adjustmentaffordance is already at the desired final magnification level (10×),the magnification level at which the viewfinder is displayed does notimmediately match the indicated magnification level (e.g., 10×) 1818.Instead, the viewfinder smoothly, over time (e.g., fractions of seconds,seconds) changes the viewfinder's 1806 magnification level so as tomatch the user's desired target magnification level, which is alreadyindicated in the magnification adjustment affordance 1818. Thistechnique is described in greater detail above, with reference to FIGS.10A-10T and 11.

In some embodiments, the viewfinder zoom rate is increased when thegesture acceleration threshold is met. In some embodiments, inaccordance with and, for example, in response to the electronic device1800 determining that a rate of the second gesture is less than apredetermined threshold, magnifying the digital viewfinder at a firstrate. In some embodiments, in accordance with and, for example, inresponse to the electronic device determining that the rate of thesecond gesture is greater than (or greater than or equal to) thepredetermined threshold, magnifying the digital viewfinder at a secondrate, wherein the first rate is less than the second rate. Exemplarytechniques for speeding up navigation and/or magnification are describedin greater detail with reference to FIGS. 22A-22J and 23A-23B.

In some embodiments, if the rate of change of arc degrees of the gesture(e.g., with respect to a center of the dial) exceeds a predeterminedthreshold, the zoom rate is increased. In some embodiments in accordancewith and, for example, in response to the electronic device determiningthat the rate of change of the second gesture (e.g., the rate of changeof arc degrees with respect to a center of the partial circle) is lessthan a second predetermined threshold, magnifying the digital viewfinder1806 at a first rate. In some embodiments in accordance with and, forexample, in response to the electronic device determining that the rateof the second gesture (e.g., the rate of change of arc degrees withrespect to a center of the partial circle) is greater than (or greaterthan or equal to) the second predetermined threshold, magnifying thedigital viewfinder at a second rate, wherein the first rate is less thanthe second rate. In some embodiments the zoom rate is determined basedon a rate of movement of a contact along a particular axis of thetouch-sensitive surface or a linear rate of movement of the contact onthe touch-sensitive surface.

As illustrated in FIGS. 18AB-18AC, in some embodiments, a swipe downgesture (e.g., 1823) will result in changing the granularity of the zoomcontrol 1824. In some embodiments, while displaying, on the display1808, a zoom control 1824 (e.g., a zoom control dial) for changing themagnification level for capture media with the one or more cameras 1802,1804, wherein the zoom control has a degree of granularity (e.g., afirst input having a first input characteristic affects the degree ofmagnification based on the degree of granularity of the zoom control),the electronic device 1800 detects a third gesture (e.g., swipe downgesture 1823 away from the center of the display, towards an edge of thedisplay) at a location corresponding to the zoom control (e.g., 1824)with a magnitude (e.g., 1822-D). In some embodiments, in response todetecting the third gesture (e.g., 1823), the electronic device changesthe degree of granularity of the zoom control (while continuing todisplay the zoom control 1824). In some examples, the same input (e.g.,1823) alters the magnification level to a first value when the zoomcontrol 1824 is at a first degree of granularity and alters themagnification level to a second value, greater than the first value,when the zoom control 1824 is at a second degree of granularity lowerthan the first degree of granularity.

As illustrated in FIGS. 18AB-18AC, in some embodiments, the change ingranularity is represented as a visual indication (e.g., by expandingthe dots on the zoom control). In some embodiments, the zoom controlincludes representations of a plurality of magnification levels (e.g.,the numbers inside 1824), and changing the degree of granularity of thezoom control includes changing (e.g., increasing, decreasing) thespacing (or distance) between the representations of the plurality ofmagnification levels. FIG. 18AC illustrates representations ofmagnification levels (e.g., 6×, 7×, 8×) being further apart than in FIG.18AB.

As illustrated in FIGS. 18AD-18AG, in some embodiments, a gesture (e.g.,swipe) on the zoom control 1824 which shows magnification values withgreater granularity will result in the zoom control dial 1824 appearingto rotate. As a result, a user is able to more precisely change themagnification level of the viewfinder 1806. In the example illustrated,a left swipe or a right swipe (e.g., 1825) results in the magnificationchanging. In some examples, a greater magnitude (e.g., 1822-E) swiperesults in a greater change of magnification.

As illustrated in FIGS. 18AH-18AI, the electronic device 1800 detects aswipe up gesture and as a result, the electronic device displays, ondisplay 1808, the original zoom control 1824 (e.g., in the state beforethe granularity was changed).

As illustrated in FIGS. 18AJ-18AN, in some embodiments, if theelectronic device 1800 determines that the electronic device was rotated(e.g., from a portrait mode to a landscape mode), the electronic device1800 rotates the display of the magnification level representations(e.g., 1.1×, 1.2×), but maintains the location of the zoom control 1824.In some embodiments, the electronic device 1800 detects a request tochange between a portrait mode and a landscape mode (e.g., detecting,using an accelerometer, rotation of the electronic device). In someembodiments, in response to detecting the request to change theelectronic device between the portrait mode and the landscape mode, theelectronic device 1800 rotates the representations of the plurality ofmagnification levels. In some examples, the location of the zoom controldoes not change in response to detecting the request to change theelectronic device between the portrait mode and the landscape mode. Insome examples, the location of the magnification adjustment affordancedoes not change in response to detecting the request to change theelectronic device between the portrait mode and the landscape mode. FIG.18AN illustrates the display after the zoom dial control slides off thescreen and only the magnification adjustment affordance is displayed1812.

As illustrated in FIGS. 18B-18AN, in some embodiments, the magnificationlevel representations are displayed in the 1×/2× control affordance. Insome embodiments, the electronic device displays, on the display 1808, arepresentation of a current magnification level 1818 for capturing mediawith the one or more cameras 1802, 1804 (and for the viewfinder) at alocation that corresponds to the magnification adjustment affordance1812 and 1826. In some examples, the magnification adjustment affordanceacts as a focus region for the magnification levels to scroll through.

FIGS. 19A-19B is a flow diagram illustrating a method for variousmagnification techniques. Method 1900 is performed at a device (e.g.,100, 300, 500, 1800) with a display and one or more input devices. Insome examples, the one or more input devices include a touch-sensitivesurface. In some examples, the touch-sensitive surface and the displaycombine to form a touch-sensitive display. In some examples, theelectronic device includes one or more cameras 1802 and 1804. Someoperations in method 1900 are, optionally, combined, the order of someoperations is, optionally, changed, and some operations are, optionally,omitted.

As described below, method 1900 provides an intuitive way for modifyingthe magnification level for one or more cameras and/or for a viewfinder.The method reduces the need for a user to maintain eye contact with thedevice while using the device, thereby creating a more efficienthuman-machine interface.

The electronic device (e.g., 1800) concurrently displays (1902), on thedisplay (e.g., 1808) a digital viewfinder (1904) (e.g., 1806) (e.g.,that includes live or near-live preview images) for capturing media withthe one or more cameras (e.g., 1802, 1804) at a first magnificationlevel (e.g., a 1× magnification level represented by indicator 1818 ofFIG. 18B) and a magnification adjustment affordance (1906) (e.g., 1812);(e.g., 1×/2× affordance, icon, textual representation indicating themagnification level). In some embodiments, while concurrently displaying(1908) the digital viewfinder (e.g., 1806) and the magnificationadjustment affordance (e.g., 1812), the electronic device 1800 detects,via the one or more input devices, a first gesture (e.g., 1820-1A) at alocation corresponding to the magnification adjustment affordance (e.g.,1812) (e.g., swipe, tap and hold, tap).

In accordance with some embodiments, in accordance with (and, forexample, in response to) the electronic device determining that thefirst gesture (e.g., 1820-1A) is of a first type (e.g., a tap gesture)(1910), the electronic device prepares (1912) to capture media with theone or more cameras (e.g., 1802 and 1804) at a second (predefined)magnification level (e.g., a 2× magnification level represented byindicator 1818 of FIG. 18D) different from the first magnification level(e.g., a 1× magnification level represented by indicator 1818 of FIG.18B). In some embodiments, a toggle between zoom levels, allows the userto select a specific zoom level and for the digital viewfinder totransition to the selected zoom level. In some embodiments, the secondmagnification level is selected without regard to a magnitude of thefirst gesture so long as the gesture is the first type of gesture (e.g.,the duration, movement, intensity of the contact don't change whichmagnification level is selected as the second magnification level aslong as the contact is still determined to be a tap gesture). In someembodiments, preparing to capture media with the one or more cameras(e.g., 1802 and 1804) at the second magnification level includesupdating display of the digital viewfinder (e.g., 1806) (e.g., usingdata received from the camera) to show the preview at the secondmagnification level. The magnification adjustment affordance enables theuser to accurately access a predefined magnification level, as comparedto requiring the user to navigate through a plurality of magnificationvalues, which requires the input to have an additional degree ofprecision, to achieve the desired magnification level. This provides theuser with an opportunity to quickly change the magnification level andthereby freeing the user from maintaining unnecessary eye contact withthe interface and giving the user more time to concentrate on framingthe shot. In accordance with some embodiments, in accordance with (and,for example, in response to) the determination that the first gesture(e.g., 1820-1A) is of the first type (e.g., a tap gesture), foregoingdisplaying the zoom control (1914).

In accordance with some embodiments, in accordance with (and, forexample, in response to) the electronic device determining that thefirst gesture is of a second type (e.g., a swipe gesture 1820-1B)different from the first type (e.g., tape gesture) (1916), theelectronic device prepares (1918) to capture media with the one or morecameras (e.g., 1802, 1804) at a dynamically-selected magnification level(e.g., a 7.4× magnification level represented by indicator 1818 of FIG.18H) different from the first magnification level (e.g., a 1×magnification level represented by indicator 1818 of FIG. 18B). In someexamples, the dynamically-selected magnification and the secondmagnification are different magnification levels. In some embodiments,the dynamically-selected magnification level is selected based on amagnitude (e.g., 1822-A) (e.g., distance) of the first gesture (e.g.,1820). In some embodiments, the swipe gesture corresponds to rotation ofthe zoom dial (e.g., 1824). Thus, in some embodiments, in response tothe electronic device detecting a user's finger swipe input, theelectronic device rotates the displayed zoom dial and updates the zoomlevel based on a characteristic of the first gesture, such as updatingthe zoom level to correspond to the magnitude of the swipe gesture. Insome examples, longer swipe gestures will result in a greater change ofthe zoom level than shorter swipe gestures. In some examples, fasterswipe gestures result in a greater change of the zoom level than slowerswipe gestures. In some examples, preparing to capture media with theone or more cameras at the second magnification level includes updatingdisplay of the digital viewfinder (e.g., using data received from thecamera) to show the preview at the second magnification level.

A swipe input gesture on the magnification adjustment affordance enablesthe user to initiate a precise magnification operation by using only thehand that is holding the device. In some examples, one handed-operationis especially beneficial if the device is at position where two handedoperation is not desirable/possible, for example recording a video at aconcert. Because the user does not need to repeatedly lower the deviceto change the magnification level, one handed operation magnificationadjustment provides the user with an opportunity to quickly change themagnification level while continuously recoding a video, resulting in astabilized video.

In accordance with some embodiments, in accordance with a determination(1920) that the magnitude of the first gesture (e.g., swipe gesture1820-1B) is a first magnitude (e.g., 1822-A), the dynamically-selectedmagnification level is a first dynamically-selected magnification level(e.g., a 7.4× magnification level represented by indicator 1818 of FIG.18H) different from the first magnification level (e.g., a 1×magnification level represented by indicator 1818 of FIG. 18B).

In accordance with some embodiments, in accordance with a determination(1922) that the magnitude of the first gesture is a second magnitudethat is different from the first magnitude (e.g., 1822-A), thedynamically-selected magnification level is a seconddynamically-selected magnification level (e.g., 10× magnification level)different from the first magnification level (e.g., a 1× magnificationlevel represented by indicator 1818 of FIG. 18B) and the firstdynamically-selected magnification level (e.g., a 7.4× magnificationlevel represented by indicator 1818 of FIG. 18H).

In accordance with some embodiments, in accordance with (and, forexample, in response to) the determination (1916) that the first gesture(e.g., 1820-1B) is of the second type (e.g., a swipe gesture) differentfrom the first type, the electronic device displays (1924), on thedisplay, a zoom control (e.g., 1824).

In accordance with some embodiments, in accordance with (and, forexample, in response to) the determination that the first gesture (e.g.,1820-1A) is of the first type (e.g., a tap gesture), display, on thedisplay at a location that corresponds to the magnification adjustmentaffordance (e.g., 1812), a representation (e.g., image, textual) of thesecond magnification level (e.g., FIG. 18D, 1818, illustrates themagnification level).

In accordance with some embodiments, in accordance with (and, forexample, in response to) the determination that the first gesture (e.g.,1820-1B) is of the second type (e.g., a swipe gesture), display, on thedisplay (e.g., 1808) at the location that corresponds to themagnification adjustment affordance (e.g., 1826), a representation(e.g., image, textual) of the dynamically-selected magnification level.Displaying a representation of the magnification level allows for a moreintuitive man-machine interface because a user will be able to quicklydiscern the amount of magnification applied within the digitalviewfinder based on the representation.

In accordance with some embodiments, in accordance with a determinationthat the first gesture (e.g., 1820-1C) is of a third type (e.g.,tap-and-hold gesture) (e.g., for greater than a predetermined amount oftime) different from the first type and the second type, display, on thedisplay, a zoom control for selecting a dynamically-selectedmagnification level from a plurality of magnification levels (e.g.,1824).

In accordance with some embodiments, displaying, on the display, thezoom control further includes shifting a display location, on thedisplay (e.g., display 1808), of the magnification adjustment affordanceaway from an edge of the display (or touchscreen display screen) towarda center of the display. In some examples, if the device is heldvertically, the affordance would appear to shift up. On the other hand,if the device was held horizontally, the affordance would appear toshift left, away from the right edge of the display device.

In accordance with some embodiments, displaying, on the display, thezoom control further includes reducing a display size of themagnification adjustment affordance (e.g., 1826).

In accordance with some embodiments, displaying, on the display, thezoom control (e.g., 1824) further includes displaying a portion of azoom control dial. In some examples, the zoom control (e.g., 1824) is adisplayed as a wheel, dial, semi-dial, a portion of a dial, or slider.In some examples, the zoom control (e.g., 1824) displays variousmagnification levels at which media is or will be, optionally, captured.The zoom control dial enables the user to select a desired magnificationlevel from among a plurality of magnification levels and to change amongthe plurality of magnification levels. In some examples, this providesthe user with the opportunity to quickly change the magnification levelusing touch input and without the need to reposition his/her finger. Asa result, the user is able to concentrate on framing the shot. Further,a video recorded while changing magnification will be more stablebecause the user will not need to repeatedly tap (or touch/lift off) onthe device to adjust the magnification level.

In accordance with some embodiments, the first type (of gesture) is atap gesture (e.g., tap 1820-1A) and the second type (of gesture) is aswipe gesture (e.g., swipe 1820-1B).

In accordance with some embodiments, displaying the zoom control (e.g.,1824) includes sliding the zoom control onto the display (e.g., 1808).In some examples, displaying the zoom control (e.g., 1824) includesdisplaying the zoom control (e.g. 1824) at a first size and thenincreasing the zoom control to a second size larger than the first size.

In accordance with some embodiments, while the electronic device (e.g.,1800) displays the zoom control (e.g., 1824) and while the electronicdevice (e.g., 1800) is prepared to capture media with the one or morecameras at a third magnification level, the electronic device detects,via the one or more input devices, a second gesture (e.g., a swipegesture 1821-1) at a location corresponding to the zoom control. Inaccordance with (and, for example, in response to) a determination thatthe second gesture is of the second type (e.g., a swipe gesture 1821-1),the electronic device rotates display of the zoom control (e.g., 1824)and prepares to capture media with the one or more cameras at a fourthmagnification level (e.g., a magnification level represented by 1818 ofFIG. 18W) (e.g., based on a magnitude of the second gesture) that isdifferent from the third magnification level (e.g., a magnificationlevel represented by 1818 of FIG. 18V). In some embodiments, amount ofrotation corresponds to a magnitude of the second input. In someembodiments, the zoom control and the magnification levels displayedwithin appear to rotate, like a wheel. In some embodiments, the zoomcontrol (e.g. 1824) rotates at a rate that is accelerated based on oneor more of: a speed of movement of the contact, a direction of movementof the contact, and/or a proximity of the contact to an edge of atouch-sensitive surface. Exemplary techniques for speeding upnavigation, control rotation, and/or magnification are described ingreater detail with reference to FIGS. 22A-22J and 23A-23B.

In accordance with some embodiments, in accordance with (and, forexample, in response to) a determination that a rate of the secondgesture is less than a predetermined threshold, zooming the digitalviewfinder (e.g., 1806) at a first rate. In accordance with (and, forexample, in response to) a determination that the rate of the secondgesture is greater than (or greater than or equal to) the predeterminedthreshold, the electronic device zooms the digital viewfinder (e.g.,1806) at a second rate, wherein the first rate is less than the secondrate. Exemplary techniques for speeding up navigation, control rotation,and/or magnification are described in greater detail with reference toFIGS. 22A-22J and 23A-23B.

In accordance with some embodiments, in accordance with (and, forexample, in response to) a determination that the rate of change of thesecond gesture (e.g., the rate of change of arc degrees with respect toa center of the partial circle) is less than a second predeterminedthreshold, zooming the digital viewfinder (e.g., 1806) at a first rate,and in accordance with (and, for example, in response to) adetermination that the rate of the second gesture (e.g., the rate ofchange of arc degrees with respect to a center of the partial circle) isgreater than (or greater than or equal to) the second predeterminedthreshold, zooming the digital viewfinder (e.g., 1806) at a second rate,wherein the first rate is less than the second rate.

In accordance with some embodiments, while the electronic devicedisplays, on the display, a zoom control (e.g., 1824) (e.g., a zoomcontrol dial) for changing the magnification level for capturing mediawith the one or more cameras, wherein the zoom control (e.g., 1824) hasa degree of granularity, the electronic device detects a third gesture(e.g., a swipe down gesture 1823 away from the center of the display,towards an edge of the display) at a location corresponding to the zoomcontrol. In some embodiments, in response to detecting the thirdgesture, the electronic device changes the degree of granularity of thezoom control (e.g., 1824 of FIG. 18AC) (while continuing to display thezoom control). In some examples, a first input which has a first inputcharacteristic affects the degree of zoom based on the degree ofgranularity of the zoom control. Increasing the granularity of the zoomcontrol via a swipe down gesture allows a user to precisely change themagnification level by using the same hand that is holding the device.In some examples, increasing the granularity with a swipe down commandallows users the ability to fine tune the magnification level withoutrequiring the user to lift his/her finger. In some examples, the userdoes not have to maintain eye contact with the display screen and,instead, can focus more on the subjects in front of him/her.

In some embodiments, the same input (e.g., 1820) alters themagnification level to a first value when the zoom control (e.g., 1824)is at a first degree of granularity and alters the magnification levelto a second value, greater than the first value, when the zoom controlis at a second degree of granularity lower than the first degree ofgranularity.

In accordance with some embodiments, the zoom control (e.g., 1824)includes representations of a plurality of magnification levels, andchanging the degree of granularity of the zoom control includes changing(e.g., increasing, decreasing) the spacing (or distance) between therepresentations of the plurality of magnification levels.

In accordance with some embodiments, a displayed zoom control includesrepresentations of a plurality of magnification levels. The electronicdevice (e.g., 1800) detects a request to change between a portrait modeand a landscape mode (e.g., detecting, using an accelerometer, rotationof the electronic device). In response to detecting the request tochange the electronic device (e.g., 1800) between the portrait mode andthe landscape mode, the electronic device rotates the representations ofthe plurality of magnification levels (e.g., FIG. 18AJ, 1824 illustratesthe representations in the dial rotated). In some examples, the locationof the zoom control (e.g., 1824) does not change in response todetecting the request to change the electronic device between theportrait mode and the landscape mode. In some examples, the location ofthe magnification adjustment affordance does not change in response todetecting the request to change the electronic device between theportrait mode and the landscape mode.

In accordance with some embodiments, the electronic device (e.g., 1800),displays, on the display, a representation of a current magnificationlevel for capturing media with the one or more cameras (e.g., 1802 and1804) (and for the viewfinder (e.g., 1806)) at a location thatcorresponds to the magnification adjustment affordance (e.g., 1818). Insome embodiments, the magnification adjustment affordance acts as afocus region for the magnification levels to scroll through.

In accordance with some embodiments, in accordance with the electronicdevice not detecting, via the one or more input devices, input at anylocation corresponding to the zoom control (e.g., 1824) for apredetermined period of time, the electronic device slides display ofthe magnification adjustment affordance toward the edge of the display(or device) and away from the center of the display (e.g., 1808). Insome embodiments, the predetermined period of time is after apredetermined period of time after lift-off, after the user breakscontact with the touch screen. In some embodiments, if the electronicdevice is held vertically, the magnification adjustment affordance wouldappear to shift down. On the other hand, in some embodiments, if theelectronic device was held horizontally, the magnification adjustmentaffordance would appear to shift right, away from the right edge of thedisplay device.

In accordance with some embodiments, in accordance with the electronicdevice (e.g., 1800) not detecting, via the one or more input devices,input at any location corresponding to the zoom control (e.g., 1824) fora predetermined period of time (e.g., after a predetermined period oftime after lift-off, after the user breaks contact with the touchscreen), the electronic device ceases to display the zoom control (e.g.,1824). In some embodiments, the zoom control slides off the display(e.g., 1808) (away from the center of the display and off the edge ofthe display) and/or fades away. The zoom control sliding off the screenallows for more information/data to be displayed in the digitalviewfinder when the zoom control is not in use. A user not interactingwith the zoom control is one indication that the user is not interestedin making magnification adjustments. Thus, in some examples, removingdisplay of the zoom control allows the user to see more of theviewfinder and, more importantly, the user will be able to seerepresentations of objects previously hidden behind the zoom control.

In accordance with some embodiments, while the electronic device (e.g.,1800) displays, on the display, the digital viewfinder (e.g., 1806)(e.g., that includes live or near-live preview images) for capturingmedia with the one or more cameras (e.g., 1802 and 1804) at a fourthmagnification level and not displaying, on the display, the zoomcontrol, the electronic device detects, via the one or more inputdevices, a fourth gesture (e.g., 1820A and 1820B) (e.g., a pinch (orde-pinch) gesture) at a location corresponding to the digital viewfinder(e.g., 1806). In accordance with (and, for example, in response to) thedetermination that the fourth gesture (e.g., 1820A and 1820B) is of afourth type (e.g., pinch gesture), the electronic device prepares tocapture media with the one or more cameras (e.g., 1802 and 1804) at asecond dynamically-selected magnification level different from thefourth magnification level (e.g., FIG. 18N, 1818, illustratesmagnification level), and the electronic device (e.g., 1800) forgoesdisplaying, on the display, the zoom control (e.g., 1824). In someexamples, the respective magnification level is selected based on amagnitude (e.g., distance) of the fourth gesture (e.g., 1820A and1820B).

In some examples, the electronic device (e.g., 1800) concurrentlydisplays, with the digital viewfinder (e.g., 1806), the magnificationadjustment affordance (e.g., 1812 and 1826) with the currentmagnification level (e.g., 1818) for capturing media with the one ormore cameras (and for the viewfinder). In some embodiments, themagnification adjustment affordance is represented as a 1×/2× affordancelabel, an icon, an image, or a textual representation indicating themagnification level. In some embodiments, in accordance with (and,optionally, in response to) detecting the fourth gesture, the deviceupdates the displayed current magnification level for capturing mediawith the one or more cameras (and for the viewfinder).

Note that details of the processes described above with respect tomethod 1900 (e.g., FIGS. 19A-19B) are also applicable in an analogousmanner to the methods described below and above. For example, methods700, 900, 1100, 1300, 2100, and 2300 optionally include one or more ofthe characteristics of the various methods described above withreference to method 2100. For example, elements of the viewfindermagnification techniques, affordances, and controls from among thevarious methods can be combined. For another example, the viewfinder inmethod 2100 is analogous to the viewfinder in methods 700, 900, 1100,1300, 2100, and 2300. For brevity, these details are not repeated below.For brevity, these details are not repeated below.

FIGS. 20A-20R illustrate exemplary devices and user interfaces for acamera application, in accordance with some embodiments. The userinterfaces in these figures are used to illustrate the processesdescribed below, including the processes in FIGS. 21A-B.

FIG. 20A illustrates an exemplary electronic device 2000 with one ormore cameras. The one or more cameras optionally include a first camera2002, and optionally, a second camera 2004, on the rear of theelectronic device 2000. In some examples, the first camera 2002 and thesecond camera 2004 have fixed, but different, focal lengths. In someexamples, the focal length, field of view, and/or optical magnificationproperties of the optical system is fixed for each of the cameras, Insome embodiments, in addition to having different fixed focal lengths,the cameras (e.g., 2002, 2004) have different fixed fields of view anddifferent fixed optical magnification properties.

In some embodiments, the first camera 2002 has a first field of view andthe second camera 2004 has a second field of view, wherein the firstfield of view and the second field of view overlap. In some examples,the first camera 2002 and the second camera 2004 are spaced apart sothat a parallax between images captured by the camera (e.g., 2002 and2004) is used to determine depths for objects represented by differentportions of the digital viewfinder. In some embodiments, the firstcamera 2002 and the second camera 2004 are located on a surface of theelectronic device 2000 and the optical axes of the cameras (e.g., 2002and 2004) are arranged such that they are parallel. In some examples,the first camera 2002 and the second camera 2004 capture overlappingfields of view, for example, at least 50% overlapping, at least 90%overlapping, or more. In some examples, the first camera 2002 has awider field of view than the second camera 2004. In some examples, thesecond camera 2004 has a wider field of view than the first camera 2002.When a wide-angle camera (e.g., a camera with a wide-angle lens) has awider field of view than a telephoto camera (e.g., a camera with atelephoto lens), at a 1× magnification of the wide-angle camera objectsappear further away than at a 1× magnification of the telephoto camera.If the wide-angle camera and the telephoto camera have overlappingfields of view such that the field of view of the telephoto camera isapproximately centered on the field of view of the wide angle camera, animage captured with the telephoto camera at a 1× magnification levelwill, in some circumstances (e.g., where the subject of the image is atleast 1 meter away), appear to be an optical zoom of a correspondingimage captured with the wide-angle camera at a 1× magnification level.

FIGS. 20B-1 and 20B-2 illustrate the front of the electronic device 2000including display 2022. The electronic device 2000 also includes a oneor more input devices, such as including a touch-sensitive surface. Insome examples, the touch-sensitive surface and the display form atouch-sensitive display. FIGS. 20B-1 and 20B-2 also illustratesdifferent areas at which, for example, input can be received: viewfinderarea 2006, zoom area 2 2008, 1×/2× button area 2 2010, zoom area 1 2012,1×/2× button area 1 2014, mode area 2016, and shutter button area 2018.These areas are illustrated with dotted lines, which are provided forthe ease of understanding of the reader. The dotted lines are not partof the user interface illustrated. In some examples, areas that surroundanother area do not include the surrounded area. For example, zoom area1 (e.g., 2012) does not include 1×/2× button 1 area (e.g., 2014). Insome examples, detecting various gestures at various areas while thedevice is in various states results in the electronic device performingvarious. Many exemplary input gestures and their resulting functions aredescribed in the tables below. In some examples, as illustrated in FIGS.20B-1 and 20B-2, the locations and/or sizes of the various areas do notchange when the electronic device transitions between a landscape modeand a portrait mode. In some examples, one or more of the locationsand/or one or more of the sizes of the various areas change when theelectronic device transitions between a landscape mode and a portraitmode.

As illustrated in FIG. 20C, while the device 2000 is prepared to capturemedia with the one or more cameras at a first magnification level (e.g.,1× magnification), the electronic device displays, on the display, adigital viewfinder (e.g., 2007, including live or near-live previewimages) based on data received from the one or more cameras (e.g., 2002and 2004). The digital viewfinder (e.g., 2007) includes one or morerepresentations (e.g., 2020, 2030) of one or more objects within a fieldof view of the one or more cameras (e.g., 2002, 2004). In the exemplaryuser interface of FIG. 20C, the digital viewfinder (e.g., 2007) includesa representation 2020 of a person and a representation of 2030 of a dog.The user interface also includes a displayed magnification adjustmentaffordance (e.g., 2009). In some examples, the magnification adjustmentaffordance (e.g., 2009) includes a representation 2024 (e.g., “1×”) of acurrent magnification level (e.g., a magnification level at which theelectronic device is prepared to capture media, a target magnificationlevel, a magnification level of the digital viewfinder). In someexamples, the magnification adjustment affordance corresponds to thelocation of the area 2014. In some examples, the mode area 2016 includesa plurality of affordances corresponding to a plurality of cameracapture modes. In the user interface of FIG. 20C, the “photo” affordanceis bolded, indicating that the electronic device is in a camera capturemode.

While displaying the digital viewfinder (e.g., 2007), the electronicdevice detects, via the one or more input devices (e.g., atouch-sensitive surface, a touch-sensitive display), a first gesture(e.g., 2028). For example, the gesture (e.g., 2028) is a swipe, a tapand hold, or a tap.

In some examples, the electronic device determines whether a first setof one or more condition is met, wherein a first condition of the firstset of one or more conditions is met when the first gesture is a tapgesture within a first area (e.g., corresponding to viewfinder area2006).

As illustrated in FIG. 20C, in accordance with a determination that afirst set of one or more conditions is met (e.g., a tap on theviewfinder area 2006), wherein a first condition of the first set of oneor more conditions is met when the first gesture (e.g., gesture 2028A ofFIG. 20C) is at a first location (e.g., as illustrated in FIG. 20C, onthe touch-sensitive surface, the first location corresponding to theviewfinder area 2006), the electronic device updates display of thedigital viewfinder (e.g., 2007) to focus (e.g., based on an estimateddistance to the respective object) on a representation (e.g., 2020 ofFIG. 20C) of a respective object (e.g., corresponding to 2020) of theone or more objects in the field of view of the one or more cameras thatcorresponds to a location of the first gesture (e.g., 2028A) on the oneor more input devices (e.g., an object that is displayed at a locationof the tap input on the touch-screen display) without preparing tocapture media with the one or more cameras at a second magnificationlevel different from the first magnification level. In some examples,when the user performs a tap gesture at the first location (e.g., withinviewfinder area 2006), the electronic changes the focus of the camerafrom a first item in the field of view of the camera to a second item(e.g., represented by 2020) in the field of view of the camera, whereinthe first item and the second item are different. In some examples,changing focus of the camera from the first item to the second itemincludes adjusting a focal point of the camera to bring the second iteminto focus.

In some embodiments, a second condition of the first set of one or moreconditions is met when a zoom control is not displayed. In someexamples, a tap in zoom area 1 or zoom area 2 when the zoom control isnot displayed will result in a focus operation.

In some embodiments, in accordance with (and/or in response to) thedetermination that the first set of one or more conditions is met (e.g.,the tap was on the viewfinder area 2006), the electronic device forgoes(e.g., does not do) one or more of the following: changing themagnification level at which the device is prepared to capture media;changing a camera capture mode of the electronic device; displaying thezoom control; locking a focus or (or alternatively, and) exposuresetting; changing the exposure at which the device is prepared tocapture media.

In some embodiments, displaying the digital viewfinder (e.g., 2007)while the device (e.g., 2000) is prepared to capture media with the oneor more cameras at the first magnification level includes displaying, onthe display, representations (e.g., 2020) of the one or more objects atthe first magnification level.

For example, when the electronic device is in an image capture mode anddetects activation of the shutter affordance 2018, the electronic devicecaptures (e.g., stores in memory) an image with the correspondingmagnification level. For another example, when the electronic device isin a video capture mode and detects activation of the shutter affordance2018, the electronic device captures (e.g., stores in memory) video atthe corresponding magnification level until, for example, activation ofthe shutter affordance 2018 is detected. In some examples, theelectronic device enables the user to select a value of the plurality ofvalues using an adjustable control 2026 while media is not beingcaptured (e.g., before capturing an image or recording video). In someexamples, the electronic device enables the user to select a value ofthe plurality of values using the adjustable control 2026 (FIG. 20I)while media is being captured (e.g., during recording of a video), thusresulting in the recorded video including a zoom in and/or zoom out thatcorresponds to the selection of the value using the adjustable control2026.

FIG. 20D illustrates a tap gesture 2028B. In some examples, theelectronic device (e.g., 2000) determines whether a second set of one ormore condition is met, wherein a first condition of the second set ofone or more conditions is met when the detected gesture (e.g., 2028B ofFIG. 20D) is a tap gesture within a second area different from the firstarea (e.g., 1×/2× button 1 area 2014).

As illustrated in FIGS. 20D-20E, in accordance with a determination thata second set of one or more conditions is met (e.g., the magnificationadjustment affordance 2019 is activated), wherein a first condition ofthe second set of one or more conditions is met when the first gesture(e.g., a tap gesture 2028B) is at a second location (e.g., on thetouch-sensitive surface, the second location corresponding to the 1×/2×button 1 area 2014) different from the first location, the electronicdevice prepares to capture media with the one or more cameras (e.g.,2002 and 2004) at the second magnification level (e.g., 2× magnificationlevel, as illustrated in FIG. 20E) different from the firstmagnification level (e.g., 1× magnification level, as illustrated inFIG. 20C) (e.g., toggle between zoom levels).

As illustrated in FIG. 20E, in accordance with some embodiments,preparing to capture media with the one or more cameras at the secondmagnification level includes updating display of the digital viewfinder(e.g., using data received from the one or more cameras) to show apreview (e.g., a live or near-live preview) at the second magnificationlevel. In some embodiments, displaying the digital viewfinder (e.g.,2007) while the device (e.g., 2000) is prepared to capture media withthe one or more cameras at the second magnification level includesdisplaying, on the display, representations (e.g., 2020) of the one ormore objects at the second magnification level.

In some embodiments, in accordance with (and/or in response to) thedetermination that the second set of one or more conditions is met(e.g., the magnification adjustment affordance 2009 was activated), theelectronic device forgoes (e.g., does not do) one or more of thefollowing: updating display of the digital viewfinder to change thefocus to a representation of a respective object; changing a cameracapture mode of the electronic device; displaying the zoom control;locking a focus or (or alternatively, and) exposure setting; changingthe exposure at which the device is prepared to capture media.

As illustrated in FIG. 20F, in some embodiments the first input is aswipe gesture (e.g., 2028C) in zoom area 1 2012. In accordance with adetermination that a third set of one or more conditions is met (e.g., aswipe gesture 2028C at zoom area 1 2012), wherein a first condition ofthe third set of one or more conditions is met when the first gesture(e.g., 2028C, a swipe gesture) is at a third location (e.g., on thetouch-sensitive surface, the third location corresponding to zoom area 12012) different from the first location, preparing to capture media withthe one or more cameras at a third magnification level that is based ona magnitude (e.g., distance traversed, illustrated by the arrow of2028C) of the first gesture (e.g., 2028C). In some examples, a secondcondition of the third set of one or more conditions is met when thefirst gesture (e.g., 2028C, a swipe gesture) is a swipe gesture with acomponent toward a first input boundary (e.g., a left edge of thetouch-sensitive surface) or a component toward a second input boundary(e.g., a right edge of the touch-sensitive surface), such as describedwith references to FIGS. 22A-22J and 23A-23B.

In some embodiments, in accordance with (and/or in response to) thedetermination that the third set of one or more conditions is met (e.g.,swipe gesture at zoom area 1 2012), the electronic device (e.g., 2000)displays (or updates display of) a zoom control, as discussed withreference to FIGS. 18A-18AN and FIGS. 22A-22J.

In some embodiments, in accordance with (and/or in response to) thedetermination that the third set of one or more conditions is met (e.g.,swipe gesture at zoom area 1 2012), the electronic device (e.g., 2000)forgoes (e.g., does not do) one or more of the following: updatingdisplay of the digital viewfinder to change the focus to arepresentation of a respective object; changing a camera capture mode ofthe electronic device; locking a focus or (or alternatively, and)exposure setting; changing the exposure at which the device is preparedto capture media.

As illustrated in FIG. 20G, in some embodiments, the first input is atap gesture 2028D in mode area 2016. In accordance with a determinationthat a fifth set of one or more conditions is met (e.g., tap 2028D inmode area 2016), wherein a first condition of the fifth set of one ormore conditions is met when the first gesture (e.g., a tap gesture2028D) is at a fourth location (e.g., on the touch-sensitive surface,the fourth location corresponding to the mode area 2016) different fromthe first location, the second location, and the third location, theelectronic device changes a camera capture mode of the electronic deviceto a mode corresponding to a location of the first gesture (e.g.,changing from an image or photo capture mode to video capture mode,changing from preparing to capture still media to preparing to capturingvideo media). In some embodiments, a second condition of the fifth setof one or more conditions is met when the first gesture (e.g., a tapgesture 2028D) is a tap gesture.

In some embodiments, in accordance with (and/or in response to) thedetermination that the fifth set of one or more conditions is met (e.g.,tap 2028D in mode area 2016), the electronic device forgoes (e.g., doesnot do) one or more of the following: changing the magnification levelat which the device is prepared to capture media; updating display ofthe digital viewfinder to change the focus to a representation of arespective object; displaying the zoom control; locking a focus or (oralternatively, and) exposure setting; changing the exposure at which thedevice is prepared to capture media.

As illustrated in FIG. 20H, in some embodiments, the first gesture is aswipe 2028E in mode area 2016. In accordance with a determination that asixth set of one or more conditions is met (e.g., swipe 2028E in modearea 2016), wherein a first condition of the sixth set of one or moreconditions is met when the first gesture (e.g., a left or right swipegesture 2028E) is at the fourth location (e.g., on the touch-sensitivesurface, the fourth location corresponding to the mode area 2016), theelectronic device changes a camera capture mode of the electronic devicebased on a directional component (e.g., left, right, up, down) of thefirst gesture (e.g., changing from an image capture mode to videocapture mode, changing from preparing to capture still media topreparing to capturing video media). In some embodiments, the modes aretraversed one at a time in that one swipe results in one mode traversal.In some embodiments, the number of modes traversed per swipe depends onthe magnitude of the swipe gesture.

In some embodiments, in accordance with (and/or in response to) thedetermination that the sixth set of one or more conditions is met (e.g.,swipe 2028E in mode area 2016), the electronic device forgoes (e.g.,does not do) one or more of the following: changing the magnificationlevel at which the device is prepared to capture media; updating displayof the digital viewfinder to change the focus to a representation of arespective object; displaying the zoom control; locking a focus or (oralternatively, and) exposure setting; changing the exposure at which thedevice is prepared to capture media.

As illustrated in FIGS. 20I-20L, the electronic device optionallydisplays adjustable controls 2026A-2026C based on the camera capturemode of the electronic device. In some examples, the adjustable control2026 is the same control element as described with reference to FIGS.18A-18AN and FIGS. 22A-22J.

As illustrated in FIG. 20I, in accordance with some embodiments, theelectronic device is in a first camera capture mode (e.g., for capturingstill images), wherein the electronic device is configurable (e.g.,using the adjustable control 2026A), while in the first camera capturemode, to prepare to capture media within a first range of magnificationlevels (e.g., 1× to 10× magnification, as illustrated in FIG. 20I). Insome examples, the electronic device is not configurable, while in thefirst camera capture mode, to prepare to capture media outside of thefirst range of magnification levels. In some examples, the adjustablecontrol 2026A can be rotated to select a magnification level, asdescribed with reference to FIGS. 18A-18AN and FIGS. 22A-22J.

As illustrated in FIG. 20J, in accordance with some embodiments, theelectronic device is in a second camera capture mode (e.g., forcapturing videos), wherein the electronic device is configurable (e.g.,using the adjustable control 2026B), while in the second camera capturemode, to prepare to capture media within a second range of magnificationlevels (e.g., 1× to 6× magnification, as illustrated in FIG. 20J),wherein the second range of magnification levels is within the firstrange of magnification levels. In some examples, the electronic deviceis not configurable, while in the second camera capture mode, to prepareto capture media outside of the second range of magnification levels. Insome examples, the adjustable control 2026B can be rotated to select amagnification level, as described with reference to FIGS. 18A-18AN andFIGS. 22A-22J.

As illustrated in FIGS. 20K-20L, in accordance with some embodiments,the electronic device is in a third camera capture mode (e.g., forcapturing slow-motion videos), wherein the electronic device isconfigurable (e.g., using the adjustable control 2026C or 2026D), whilein the third camera capture mode, to prepare to capture media within athird range of magnification levels (e.g., 1× to 3× magnification whenusing a first camera of the electronic device, as illustrated in FIG.20K; 2× to 6× magnification when using a second camera of the electronicdevice, as illustrated in FIG. 20L), wherein the third range ofmagnification levels is within the second range of magnification levels.In some examples, the electronic device is not configurable, while inthe third camera capture mode, to prepare to capture media outside ofthe third range of magnification levels. In some examples, theadjustable controls 2026C and 2026D can be rotated to select amagnification level, as described with reference to FIGS. 18A-18AN andFIGS. 22A-22J.

In accordance with some embodiments, the electronic device is in afourth camera capture mode (e.g., for capturing timelapse and/orpanoramic images), wherein the electronic device is configurable, whilein the fourth camera capture mode, to prepare to capture media at afirst predetermined magnification level (e.g., 1× magnification) and ata second predetermined magnification level (e.g., 2× magnification),wherein the first predetermined magnification level (e.g., 1×magnification) and the second predetermined magnification level (e.g.,2×) are within the second range of magnification levels (e.g., within 1×to 6×). In some examples, the electronic device is not configurable,while in the fourth camera capture mode, to prepare to capture media atmagnification levels other than the first predetermination magnificationlevel and the predetermined second magnification level. In someexamples, the adjustable control is not displayed while in the thirdcamera capture mode.

As illustrated in FIGS. 20M-1 to 20N-2, a tap gesture (e.g., 2028F) inzoom area 1 2012 when adjustable control 2026 (e.g., a zoom dial) is notdisplayed results in changing a focus (e.g., to focus on the objectrepresented by 2030), and a tap gesture (e.g., 2028G) in zoom area 12012 when adjustable control 2026 (e.g., a zoom dial) is displayedresults in not changing a focus. FIG. 20M-1 and FIG. 20M-2 illustratesimilar concepts, with the device of FIG. 20M-1 being in the portraitmode and the device of FIG. 20M-2 being in a landscape mode. Similarly,FIG. 20N-1 and FIG. 20N-2 illustrate similar concepts, with the deviceof FIG. 20N-1 being in the portrait mode and the device of FIG. 20N-2being in a landscape mode.

As illustrated in FIGS. 20M-1 and 20M-2, in some examples, when theelectronic device is prepared to capture media at the firstmagnification level, in accordance with a determination that a set ofone or more conditions is met (e.g., a tap 2028F on zoom area 1 2012),wherein a first condition of the set of one or more conditions is metwhen the gesture (e.g., gesture 2028F) is at a location (e.g., on thetouch-sensitive surface, the location corresponding to the zoom area 12012), and a second condition of the set of one or more conditions ismet when an adjustable control is not displayed, the electronic deviceupdates display of the digital viewfinder (e.g., 2007) to focus (e.g.,based on an estimated distance to the respective object) on arepresentation (e.g., 2030 of FIGS. 20M-1 and 20M-2) of a respectiveobject (e.g., corresponding to 2030) of the one or more objects in thefield of view of the one or more cameras that corresponds to a locationof the gesture (e.g., 2028F) on the one or more input devices (e.g., anobject that is displayed at a location of the tap input on thetouch-screen display).

As illustrated in FIGS. 20N-1 and 20N-2, in some examples, when theelectronic device is prepared to capture media at the firstmagnification level, in accordance with a determination that a differentset of one or more conditions is met (e.g., a tap on zoom area 1 2012),wherein a first condition of the different set of one or more conditionsis met when the gesture (e.g., gesture 2028F) is at a location (e.g., onthe touch-sensitive surface, the location corresponding to the zoom area1 2012), and a second condition of the different set of one or moreconditions is met when an adjustable control is displayed, theelectronic device foregoes updating display of the digital viewfinder(e.g., 2007) to focus (e.g., based on an estimated distance to therespective object) on a representation of a respective object of the oneor more objects in the field of view of the one or more cameras thatcorresponds to a location of the gesture (e.g., 2028F) on the one ormore input devices (e.g., an object that would be displayed at alocation of the tap input on the touch-screen display).

As illustrated in FIGS. 20O-20P, in accordance with some embodiments,the first gesture is a swipe gesture (e.g., 2028G) at a locationcorresponding to the 1×/2× button 1 2014, when the adjustable control isnot displayed. In response to detecting the first input is a swipegesture at a location corresponding to the 1×/2× button 1 2014, theelectronic device transitions from a magnification level (e.g., 1×, asillustrated in FIG. 20O) to a different magnification level (e.g., 2×magnification, as illustrated in FIG. 20P).

In accordance with some embodiments, the first input is a tap and hold(e.g., hold for a predetermined period of time) at 1×/2× button area 12014. In accordance with a determination that a seventh set of one ormore conditions is met (e.g., tap and hold on the magnificationadjustment affordance 2019), wherein a first condition of the seventhset of one or more conditions is met when the first gesture (e.g., a tapand hold gesture) is at the second location (e.g., on thetouch-sensitive surface, the second location corresponding to themagnification adjustment affordance 2019), displaying, on the display,the zoom control (e.g., a zoom dial, as described above with referenceto FIGS. 18R-18U).

In some embodiments, in accordance with (and/or in response to) thedetermination that the seventh set of one or more conditions is met(e.g., tap and hold on the magnification adjustment affordance 2019),the electronic device forgoes (e.g., does not do) one or more of thefollowing: changing the magnification level at which the device isprepared to capture media; updating display of the digital viewfinder tochange the focus to a representation of a respective object; changing acamera capture mode of the electronic device; locking a focus or (oralternatively, and) exposure setting; changing the exposure at which thedevice is prepared to capture media.

In some embodiments, in accordance with a determination that a seventhset of one or more conditions is met (e.g., tap and hold on 1×/2× buttonarea 1 2014, which corresponds to the magnification adjustmentaffordance 2019), wherein a first condition of the seventh set of one ormore conditions is met when the first gesture (e.g., a tap and holdgesture) is at the second location (e.g., 1×/2× button area 1 2014 onthe touch-sensitive surface, the second location corresponding to themagnification adjustment affordance 2019), the electronic devicedisplays, on the display, the zoom control (e.g., a zoom dial), asdescribed in greater detail above with reference to FIGS. 18R-18U. Insome examples, a second condition of the seventh set of one or moreconditions is met when the zoom control is not displayed, on thedisplay, when the first input is detected.

In some embodiments, in accordance with (and/or in response to) thedetermination that the seventh set of one or more conditions is met(e.g., tap and hold on 1×/2× button area 1 2014, which corresponds tothe magnification adjustment affordance 2019), the electronic deviceforgoes (e.g., does not do) one or more of the following: changing themagnification level at which the device is prepared to capture media;updating display of the digital viewfinder to change the focus to arepresentation of a respective object; changing a camera capture mode ofthe electronic device; locking a focus or (or alternatively, and)exposure setting; changing the exposure at which the device is preparedto capture media.

In some embodiments, in accordance with a determination that an eightset of one or more conditions is met (e.g., tap and hold on viewfinderarea 2006), wherein a first condition of the eight set of one or moreconditions is met when the first gesture (e.g., a tap and hold gesture)is at the first location (e.g., on the touch-sensitive surface, thefirst location corresponding to the viewfinder area 2006), locking afocus or (or alternatively, and) exposure setting based on acharacteristic of a respective object (e.g., based on an estimateddistance to the respective object) of the one or more objects in thefield of view of the one or more cameras that corresponds to a locationof the first gesture on the one or more input devices (e.g., an objectthat displayed at a location of the tap input on the touch-screendisplay).

In some embodiments, in accordance with (and/or in response to) thedetermination that the eight set of one or more conditions is met (e.g.,tap and hold on viewfinder area), the electronic device forgoes (e.g.,does not do) one or more of the following: changing the magnificationlevel at which the device is prepared to capture media; changing acamera capture mode of the electronic device; displaying the zoomcontrol; changing the exposure at which the device is prepared tocapture media.

In some embodiments, when the first input is a swipe gesture on adisplayed adjustable control (e.g., 2026), the electronic device changesa magnification level at which the electronic device is prepared tocapture media. In some embodiments, in accordance with a determinationthat a ninth set of one or more conditions is met (e.g., swipe on zoomarea 2 2008), wherein a first condition of the ninth set of one or moreconditions is met when the first gesture (e.g., a swipe gesture) is at afifth location (e.g., on the touch-sensitive surface, the fifth locationcorresponding to the zoom area 2 2008), and a second condition of theninth set of one or more conditions is met when a zoom dial is displayedon the display, the electronic device prepares to capture media with theone or more cameras at a fifth magnification level based on a magnitudeof the first gesture.

In some embodiments, in accordance with (and/or in response to) thedetermination that the ninth set of one or more conditions is met (e.g.,swipe on zoom area 2), the electronic device forgoes (e.g., does not do)one or more of the following: updating display of the digital viewfinderto change the focus to a representation of a respective object; changinga camera capture mode of the electronic device; locking a focus or (oralternatively, and) exposure setting; changing the exposure at which thedevice is prepared to capture media.

In some embodiments, when the first input is a swipe gesture in theviewfinder area 2006 when a focus setting or exposure setting is locked,the electronic device changes the respective focus or exposure (e.g.,based on a magnitude of the first input). In some embodiments, theelectronic device is prepared to capture media, using a first exposure,with the one or more cameras with a focus or (or alternatively, and)exposure setting locked. In accordance with a determination that a tenthset of one or more conditions is met (e.g., swipe on the viewfinder area2006), wherein a first condition of the tenth set of one or moreconditions is met when the first gesture (e.g., a swipe gesture, such asa swipe left or swipe right gesture) is at the first location (e.g., onthe touch-sensitive surface, the first location corresponding to theviewfinder area 2006), preparing to capture media, using a secondexposure (different from the first exposure), with the one or morecameras, wherein the second exposure is based on a magnitude of thefirst input. In some embodiments, a second condition of the tenth set ofone or more conditions is met when a focus setting or exposure settingof the electronic device is locked.

In some embodiments, when the electronic device detects the firstgesture (e.g., swipe) at a location corresponding to the viewfinderwhile the focus and/or exposure setting is locked, the electronic devicechanges a camera capture mode of the electronic device based on adirectional component of the first gesture (e.g., changing from an imagecapture mode to video capture mode, changing from preparing to capturestill media to preparing to capturing video media). In some embodiments,when the zoom control is displayed and the electronic device detects thefirst gesture (e.g., swipe) at a location corresponding to the zoomcontrol while the focus and/or exposure setting is locked, theelectronic device prepares to capture media with the one or more camerasat a dynamically-selected magnification level, wherein the respectivemagnification level is selected based on a magnitude (e.g., distance) ofthe first gesture. In some embodiments, when the electronic devicedetects the first gesture (e.g., swipe) at a location corresponding tothe camera capture mode while the focus and/or exposure setting islocked, the electronic device changes a camera capture mode of theelectronic device based on a directional component of the first gesture(e.g., changing from an image capture mode to video capture mode,changing from preparing to capture still media to preparing to capturingvideo media).

In some embodiments, in accordance with (and/or in response to) thedetermination that the tenth set of one or more conditions is met (e.g.,swipe on the viewfinder area 2006), the electronic device forgoes (e.g.,does not do) one or more of the following: changing the magnificationlevel at which the device is prepared to capture media; updating displayof the digital viewfinder to change the focus to a representation of arespective object; changing a camera capture mode of the electronicdevice; displaying the zoom control; and locking a focus or (oralternatively, and) exposure setting.

In some embodiment, an exposure setting is based on one or more of anf-stop, an aperture size, and an ISO value (or simulations thereof). Insome embodiments, with a focus or (or alternatively, and) exposuresetting locked, a swipe up or swipe down gesture at the first locationresults in a change in the exposure setting.

In some embodiments, the first location (e.g., on the touch-sensitivesurface, the first location corresponding to the viewfinder area 2006),the second location (e.g., on the touch-sensitive surface, 1×/2× button1 2014 corresponding to the magnification adjustment affordance 2019),the third location (e.g., on the touch-sensitive surface, the thirdlocation corresponding to zoom area 1 2012), the fourth location (e.g.,on the touch-sensitive surface, the fourth location corresponding to themode area 2016), and the fifth location (e.g., on the touch-sensitivesurface, the fifth location corresponding to the zoom area 2 2008), andlocations corresponding to the 1×/2× button area 2 2010 are independent(e.g., different, distinct, separate, adjacent, do not overlap) from oneanother.

As illustrated in FIGS. 20Q-20R, in accordance with a determination thata fourth set of one or more conditions is met (e.g., swipe gesture 2028Hon viewfinder area 2006), wherein a first condition of the fourth set ofone or more conditions is met when the first gesture (e.g., a swipegesture 2028H) is at the first location (e.g., on the touch-sensitivesurface, the first location corresponding to the viewfinder area 2006),the electronic device 2000 changes a camera capture mode of theelectronic device (e.g., changes among the modes described withreference to FIGS. 20I-20L, from an image or photo capture mode to avideo capture mode, changing from preparing to capture still media topreparing to capturing video media, as illustrated in FIG. 20J). In someexamples, a second condition of the fourth set of one or more conditionsis met when the first gesture (e.g., a swipe gesture 2028H) has adirectional component along the x-axis that, optionally, exceeds aminimum threshold magnitude (e.g., a speed of movement, a distance ofmovement, and/or an acceleration of movement).

In some embodiments, in accordance with (and/or in response to) thedetermination that the fourth set of one or more conditions is met(e.g., swipe gesture 2028H on viewfinder area 2006), the electronicdevice 2000 forgoes (e.g., does not do) one or more of the following:changing the magnification level at which the device is prepared tocapture media; updating display of the digital viewfinder to change thefocus to a representation of a respective object; displaying the zoomcontrol; locking a focus or (or alternatively, and) exposure setting;changing the exposure at which the device is prepared to capture media.

The tables below provide exemplary conditions for the electronic device2000 to perform particular functions. In Table 1, an adjustable control,such as a zoom dial, is not displayed on the display. In Table 2, anadjustable control, such as a zoom dial, is displayed on the display. Insome instances, input received by the electronic device causesperforming the same function regardless of the adjustable control beingdisplayed. In other instances, input received by the electronic devicecauses performing different (or additional) functions when theadjustable control is displayed as compared to when the adjustablecontrol is not displayed. In some examples, the first two columnsprovide additional criterion to be met for the electronic device toperform the function specified in the third column. For example, thefirst column specifies the location at which the gesture is received,such as locations on a touch-sensitive surface corresponding to theareas described with reference to FIGS. 20B-1 and 20B-2, and the secondcolumn describes the type of gesture that is received.

For example, a swipe left gesture and a swipe right gesture are gesturesthat have a component along the X-axis of the touch-sensitive surface.In some examples, the function of bringing up a zoom control includestransitioning the device from a state where the adjustable control isnot displayed to a state where the adjustable device is displayed, suchas described with reference to FIGS. 18R-18U. In some examples, a zoomfunction includes changing the magnification level at which theelectronic device is prepared to capture media, such as described withreference to FIGS. 22A-22J. In some examples, the zoom function includesrotating the adjustable control to reflect the updated magnificationlevel and/or updating the viewfinder to display representations ofobjects in the field of view of the one or more cameras at the updatedmagnification level. A focus function includes preparing the electronicdevice to capture media at an updated focus, such as described withreference to FIG. 20C. In some examples, changing a camera capture modeincludes changing between different virtual cameras, such as describedwith reference to FIGS. 20G-20L. In some examples, an AE/EF lockfunction includes locking a focus setting and/or exposure setting basedon a characteristic of a respective object.

TABLE 1 ADJUSTABLE CONTROL NOT DISPLAYED Area Gesture FunctionViewfinder Area 2006 Tap Focus Viewfinder Area 2006 Swipe Left or RightChange camera capture mode Viewfinder Area 2006 Tap and Hold AE/AF lockZoom Area 2 2008 Tap Focus Zoom Area 2 2008 Swipe Left or Right Changecamera capture mode Zoom Area 2 2008 Tap and Hold AE/AF lock 1x/2xbutton 2 2010 Tap Focus 1x/2x button 2 2010 Swipe Left or Right Changecamera capture mode 1x/2x button 2 2010 Tap and Hold AE/AF lock ZoomArea 1 2012 Tap Focus Zoom Area 1 2012 Swipe Left or Right Bring up zoomcontrol + zoom based on magnitude of swipe Zoom Area 1 2012 Tap and HoldBring up zoom control 1x/2x button 1 2014 Tap Zoom to predeterminedlevel 1x/2x button 1 2014 Swipe Left or Right Bring up zoom control +zoom 1x/2x button 1 2014 Tap and Hold Bring up zoom control Mode Area2016 Tap Change camera capture mode Mode Area 2016 Swipe Left or RightChange camera capture mode Mode Area 2016 Tap and Hold Change cameracapture mode (on liftoff)

TABLE 2 ADJUSTABLE CONTROL DISPLAYED Area Gesture Function ViewfinderArea 2006 Tap Focus Viewfinder Area 2006 Swipe Left or Right Changecamera capture mode Viewfinder Area 2006 Tap and Hold AE/AF lock ZoomArea 2 2008 Tap Reset timer for hiding zoom control Zoom Area 2 2008Swipe Left or Right Zoom based on magnitude of swipe Zoom Area 2 2008Tap and Hold Maintain display of zoom control Zoom Area 2 2008 SwipeDown Change zoom granularity 1x/2x button 2 2010 Tap Zoom topredetermined level 1x/2x button 2 2010 Swipe Left or Right Zoom basedon magnitude of swipe 1x/2x button 2 2010 Tap and Hold Indicate thatzoom control is selected (enlarge 1x/2x button) Zoom Area 1 2012 TapReset timer for hiding zoom control Zoom Area 1 2012 Swipe Left or RightZoom based on magnitude of swipe Zoom Area 1 2012 Tap and Hold Maintaindisplay of zoom control Zoom Area 1 2012 Swipe Down Change zoomgranularity 1x/2x button 1 2014 Tap Reset timer for hiding zoom control1x/2x button 1 2014 Swipe Left or Right Zoom based on magnitude of swipe1x/2x button 1 2014 Tap and Hold Maintain display of zoom control 1x/2xbutton 1 2014 Swipe Down Change zoom granularity Mode Area 2016 TapChange camera capture mode Mode Area 2016 Swipe Left or Right Changecamera capture mode Mode Area 2016 Tap and Hold Change camera capturemode (on liftoff)

Tables 1 and 2 above show a plurality of different responses todifferent inputs in different regions of a touch-sensitive surface.While the examples above describe tap inputs, swipe inputs, and tap andhold inputs for a plurality of regions, in some embodiments, one or moreof the regions is not included on the touch-sensitive surface and/or oneor more of the gesture types is not detected for a particular region orfor all of the regions. As such, it should be understood that use ofvarious combinations of various subsets of the responses to the inputsdescribed above is contemplated. Tables 1 and 2 show comparatively how aparticular type of input (e.g., a swipe left or right) is interpreted bythe device in varying ways depending on where the swipe input isdetected (e.g., as a zoom input when detected in zoom area 1 or as amode change input when detected in mode area) without requiring that thedevice respond to all of the various inputs shown above in everysituation. Similarly, tables 1 and 2 show comparatively how the devicecan respond differently to different inputs in a particular region(e.g., zoom area 1) depending on what type of input is detected (e.g.,focusing for a tap input, zooming for a swipe input without requiringthat the device respond to all of the various inputs shown above inevery situation. Additionally, tables 1 and 2 show comparatively how thedevice can respond differently to different inputs in a particularregion (e.g., zoom area 2) depending on what a current user interfacestate (e.g., swipe to change modes if the adjustable control is notdisplayed or swipe to zoom if the adjustable control is displayed)without requiring that the device respond to all of the various inputsshown above in every situation.

FIGS. 21A-21B are a flow diagram illustrating a method for managing userinputs at an electronic device, in accordance with some embodiments.Method 2100 is performed at a device (e.g., 100, 300, 500, 2000) withone or more cameras (e.g., 2002 and 2004), one or more input devices(e.g., a touch-sensitive surface), and a display. In some embodiments,the device has a plurality of camera, with each camera having adifferent focal length. In some embodiments, the one or more inputdevices include a touch-sensitive surface. In some embodiments, thetouch-sensitive surface and the display are part of a touch-sensitivedisplay. Some operations in method 2100 are, optionally, combined, theorder of some operations is, optionally, changed, and some operationsare, optionally, omitted.

As described below, method 2100 provides an intuitive way for managinguser inputs at an electronic device. The method reduces the cognitiveburden on a user for providing inputs corresponding to functions,thereby creating a more efficient human-machine interface. Forbattery-operated computing devices, enabling a user to initiate variousfunctions faster and more efficiently conserves power and increases thetime between battery charges.

While (2102) the device (e.g., 2000) is prepared to capture media withthe one or more cameras (e.g., 2002 and 2004) at a first magnificationlevel (e.g., a magnification level corresponding to the value displayedin 2014), displaying (2104), on the display a digital viewfinder (e.g.,2007, including live or near-live preview images) based on data receivedfrom the one or more cameras (e.g., 2002 and 2004). The digitalviewfinder (e.g., 2007) includes (2106) a representation (e.g., 2020,2030) of one or more objects within a field of view of the one or morecameras (e.g., 2002, 2004).

In accordance with some embodiments, displaying the digital viewfinder(e.g., 2007) while the device (e.g., 2000) is prepared to capture mediawith the one or more cameras at the first magnification level includesdisplaying (2108), on the display, representations (e.g., 2020) of theone or more objects at the first magnification level.

While displaying the digital viewfinder (e.g., 2007), detecting (2110),via the one or more input devices, a first gesture (e.g., 2028; swipe,tap and hold, tap).

In some accordance with some embodiments, the electronic devicedetermines whether a first set of one or more condition is met, whereina first condition of the first set of one or more conditions is met whenthe first gesture is a tap gesture within a first area (e.g.,corresponding to viewfinder area 2006).

In accordance with a determination (2112) that the first set of one ormore conditions is met (e.g., the tap was on the viewfinder area 2006),wherein a first condition of the first set of one or more conditions ismet when the first gesture (e.g., gesture 2028A of FIG. 20C) is at afirst location (e.g., as illustrated in FIG. 20C, on the touch-sensitivesurface, the first location corresponding to the viewfinder area 2006),the electronic device updates (2114) display of the digital viewfinder(e.g., 2007) to focus (e.g., based on an estimated distance to therespective object) on a representation (e.g., 2020 of FIG. 20C) of arespective object (e.g., corresponding to 2020) of the one or moreobjects in the field of view of the one or more cameras that correspondsto a location of the first gesture (e.g., 2028A) on the one or moreinput devices (e.g., an object that is displayed at a location of thetap input on the touch-screen display) without preparing to capturemedia with the one or more cameras at a second magnification leveldifferent from the first magnification level. In some examples, when theuser performs a tap at the first location (e.g., within viewfinder area2006), the electronic device changes the focus of the camera from afirst item in the field of view of the camera to a second item (e.g.,represented by 2020) in the field of view of the camera, wherein thefirst item and the second item are different.

In some examples, the electronic device (e.g., 2000) determines whethera second set of one or more condition is met, wherein a first conditionof the second set of one or more conditions is met when the detectedgesture (e.g., 2028B of FIG. 20D) is a tap gesture within a second areadifferent from the first area (e.g., 1×/2× button 1 area 2014); and

In accordance with a determination (2116) that the second set of one ormore conditions is met, wherein a first condition of the second set ofone or more conditions is met when the first gesture (e.g., 2028B, a tapgesture) is at a second location (e.g., on the touch-sensitive surface,the second location corresponding to the 1×/2× button 1 area 2014)different from the first location, the electronic device prepares (2118)to capture media with the one or more cameras (e.g., 2002 and 2004) atthe second magnification level (e.g., 2× magnification level, asillustrated in FIG. 20E) different from the first magnification level(e.g., 1× magnification level, as illustrated in FIG. 20C) (e.g., togglebetween zoom levels). Distinguishing between a tap gesture on theviewfinder and a tap gesture on the magnification adjustment affordanceallows for an intuitive man-machine interface whereby the devicedisambiguates the users input to instruct the device to perform a focusfunction and a magnification function. This ability to disambiguateenables the user interface to make both functions (and additionalfunctions) available to the user without the need to use submenus,thereby increasing the efficiency of using the device and reducingenergy usage of the device and increasing battery life forbattery-powered devices.

In accordance with some embodiments, preparing to capture media with theone or more cameras at the second magnification level includes updating(2116) display of the digital viewfinder (e.g., using data received fromthe one or more cameras) to show a preview at the second magnificationlevel.

In accordance with some embodiments, in accordance with (and/or inresponse to) the determination that the first set of one or moreconditions is met (e.g., the tap was on the viewfinder area 2006), theelectronic device forgoes (e.g., does not do) one or more of thefollowing: changing the magnification level at which the device isprepared to capture media; changing a camera capture mode of theelectronic device; displaying the zoom control; locking a focus or (oralternatively, and) exposure setting; changing the exposure at which thedevice is prepared to capture media.

In accordance with some embodiments, in accordance with (and/or inresponse to) the determination that the second set of one or moreconditions is met (e.g., the magnification adjustment affordance 2009was activated), the electronic device forgoes (e.g., does not do) one ormore of the following: updating display of the digital viewfinder tochange the focus to a representation of a respective object; changing acamera capture mode of the electronic device; displaying the zoomcontrol; locking a focus or (or alternatively, and) exposure setting;changing the exposure at which the device is prepared to capture media.

In accordance with some embodiments, in accordance with a determinationthat a third set of one or more conditions is met (e.g., swipe gesture2028C at zoom area 1 2012), wherein a first condition of the third setof one or more conditions is met when the first gesture (e.g., 2028C, aswipe gesture) is at a third location (e.g., on the touch-sensitivesurface, the third location corresponding to zoom area 1 2012) differentfrom the first location, the electronic device prepares to capture mediawith the one or more cameras at a third magnification level that isbased on a magnitude (e.g., distance traversed, illustrated by the arrowof 2028C) of the first gesture. A swipe input gesture on themagnification adjustment affordance enables the user to initiate aprecise magnification operation by, for example, using only the handthat is holding the device. This is especially beneficial if the deviceis at position where two handed operation is not desirable, for examplerecording a video at a concert. Because the user does not need torepeatedly lower the device to change the magnification level,one-handed operation magnification adjustment provides the user with anopportunity to quickly change the magnification level while continuouslyrecoding a video, resulting in a stabilized video.

In accordance with some embodiments, in accordance with (and/or inresponse to) the determination that the third set of one or moreconditions is met (e.g., swipe gesture at zoom area 1 2012), theelectronic device (e.g., 2000) forgoes (e.g., does not do) one or moreof the following: updating display of the digital viewfinder to changethe focus to a representation of a respective object; changing a cameracapture mode of the electronic device; locking a focus or (oralternatively, and) exposure setting; changing the exposure at which thedevice is prepared to capture media.

In accordance with some embodiments, in accordance with a determinationthat a fourth set of one or more conditions is met (e.g., swipe gesture2028H on viewfinder area 2006), wherein a first condition of the fourthset of one or more conditions is met when the first gesture (e.g., aswipe gesture 2028H) is at the first location (e.g., on thetouch-sensitive surface, the first location corresponding to theviewfinder area 2006), the electronic device changes a camera capturemode of the electronic device (e.g., from an image or photo capture modeto a video capture mode, changing from preparing to capture still mediato preparing to capturing video media). Distinguishing between a swipegesture on the viewfinder and a tap gesture on the viewfinder allows foran intuitive man-machine interface whereby the device disambiguates theusers input to instruct the device to perform a mode change or a focuschange. This ability to disambiguate enables the user interface to makeboth functions (and additional functions) available to the user withoutthe need to use submenus. A swipe in the viewfinder area to change amode also provides the user a bigger input area in which to initiate amode change, thus not requiring the user to use the smaller mode area tochange modes.

In accordance with some embodiments, in accordance with (and/or inresponse to) the determination that the fourth set of one or moreconditions is met (e.g., swipe gesture 2028H on viewfinder area 2006),the electronic device forgoes (e.g., does not do) one or more of thefollowing: changing the magnification level at which the device isprepared to capture media; updating display of the digital viewfinder tofocus on a representation of a respective object; displaying the zoomcontrol; locking a focus or (or alternatively, and) exposure setting;changing the exposure at which the device is prepared to capture media.

In accordance with some embodiments, in accordance with a determinationthat a fifth set of one or more conditions is met (e.g., tap 2028D inmode area 2016), wherein a first condition of the fifth set of one ormore conditions is met when the first gesture (e.g., a tap gesture2028D) is at a fourth location (e.g., on the touch-sensitive surface,the fourth location corresponding to the mode area 2016) different fromthe first location, the second location, and the third location, theelectronic device changes a camera capture mode of the electronic deviceto a mode corresponding to a location of the first gesture (e.g.,changing from an image or photo capture mode to video capture mode,changing from preparing to capture still media to preparing to capturingvideo media). A tap in the mode area to change a mode allows the user toquickly change the mode without unnecessary steps. In some examples, ifthe user wanted to change the mode to the last mode listed in the modelist, instead of swiping repeatedly to get to the desired mode, the userwould only need to tap once on the desired mode to activate the desiredmode. In some examples, as a result the user would save time by nothaving to perform unnecessary intermediate steps.

In accordance with some embodiments, in accordance with (and/or inresponse to) the determination that the fifth set of one or moreconditions is met (e.g., tap 2028D in mode area 2016), the electronicdevice forgoes (e.g., does not do) one or more of the following:changing the magnification level at which the device is prepared tocapture media; updating display of the digital viewfinder to change thefocus to a representation of a respective object; displaying the zoomcontrol; locking a focus or (or alternatively, and) exposure setting;changing the exposure at which the device is prepared to capture media.

In accordance with some embodiments, in accordance with a determinationthat a sixth set of one or more conditions is met (e.g., swipe 2028E inmode area 2016), wherein a first condition of the sixth set of one ormore conditions is met when the first gesture (e.g., a left or rightswipe gesture 2028E) is at the fourth location (e.g., on thetouch-sensitive surface, the fourth location corresponding to the modearea 2016), the electronic device changes a camera capture mode of theelectronic device based on a directional component (e.g., left, right,up, down) of the first gesture (e.g., changing from an image capturemode to video capture mode, changing from preparing to capture stillmedia to preparing to capturing video media). In some embodiments, themodes are traversed one at a time in that one swipe results in one modetraversal. In some embodiments, the number of modes traversed per swipedepends on the magnitude of the swipe gesture.

In accordance with some embodiments, in accordance with (and/or inresponse to) the determination that the sixth set of one or moreconditions is met (e.g., swipe 2028E in mode area 2016), the electronicdevice forgoes (e.g., does not do) one or more of the following:changing the magnification level at which the device is prepared tocapture media; updating display of the digital viewfinder to change thefocus to a representation of a respective object; displaying the zoomcontrol; locking a focus or (or alternatively, and) exposure setting;changing the exposure at which the device is prepared to capture media.

In accordance with some embodiments, the electronic device is configuredto change (e.g., based on user input) among one or more of a firstcamera capture mode, a second camera capture mode, a third cameracapture mode, and a fourth camera capture mode.

In the first camera capture mode (e.g., for capturing still images), theelectronic device is configurable, while in the first camera capturemode, to prepare to capture media within a first range of magnificationlevels (e.g., 1× to 10× magnification, as illustrated in FIG. 20I). Insome examples, the electronic device is not configurable, while in thefirst camera capture mode, to prepare to capture media outside of thefirst range of magnification levels. In some examples, the adjustablecontrol (e.g., 2026A) can be rotated to select a magnification level, asdescribed with reference to FIGS. 18A-18AN and FIGS. 22A-22J.

In the second camera capture mode (e.g., for capturing videos), theelectronic device is configurable, while in the second camera capturemode, to prepare to capture media within a second range of magnificationlevels (e.g., 1× to 6× magnification, as illustrated in FIG. 20J),wherein the second range of magnification levels is within the firstrange of magnification levels, In some examples, the electronic deviceis not configurable, while in the second camera capture mode, to prepareto capture media outside of the second range of magnification levels. Insome examples, the adjustable control (e.g., 2026B) can be rotated toselect a magnification level, as described with reference to FIGS.18A-18AN and FIGS. 22A-22J.

In the third camera capture mode (e.g., for capturing slow-motionvideos), the electronic device is configurable, while in the thirdcamera capture mode, to prepare to capture media within a third range ofmagnification levels (e.g., 1× to 3× magnification when using a firstcamera of the electronic device, as illustrated in FIG. 20K; 2× to 6×magnification when using a second camera of the electronic device, asillustrated in FIG. 20L), wherein the third range of magnificationlevels is within the second range of magnification levels, and In someexamples, the electronic device is not configurable, while in the thirdcamera capture mode, to prepare to capture media outside of the thirdrange of magnification levels. In some examples, the adjustable controls(e.g., 2026C and 2026D) can be rotated to select a magnification level,as described with reference to FIGS. 18A-18AN and FIGS. 22A-22J.

In the fourth camera capture mode (e.g., for capturing timelapse and/orpanoramic images), the electronic device is configurable, while in thefourth camera capture mode, to prepare to capture media at a firstpredetermined magnification level (e.g., 1× magnification) and at asecond predetermined magnification level (e.g., 2× magnification),wherein the first predetermined magnification level (e.g., 1×magnification) and the second predetermined magnification level (e.g.,2×) are within the second range of magnification levels (e.g., within 1×to 6×). In some examples, the electronic device is not configurable,while in the fourth camera capture mode, to prepare to capture media atmagnification levels other than the first predetermination magnificationlevel and the predetermined second magnification level. In someexamples, the adjustable control is not displayed while in the thirdcamera capture mode.

In accordance with some embodiments, a second condition of the first setof one or more conditions is met when a zoom control is not displayed.In some examples, a tap in zoom area 1 and zoom area 2 when the zoomcontrol is not displayed will result in a focus operation.

In accordance with some embodiments, in accordance with a determinationthat a seventh set of one or more conditions is met (e.g., tap and holdon 1×/2× button area 1 2014, which corresponds to the magnificationadjustment affordance 2019), wherein a first condition of the seventhset of one or more conditions is met when the first gesture (e.g., a tapand hold gesture) is at the second location (e.g., 1×/2× button area 12014 on the touch-sensitive surface, the second location correspondingto the magnification adjustment affordance 2019), the electronic devicedisplays, on the display, the zoom control (e.g., a zoom dial), such asdescribed above with reference to FIGS. 18R-18U. In some examples, asecond condition of the seventh set of one or more conditions is metwhen the zoom control is not displayed when the first input is detected.

In accordance with some embodiments, in accordance with (and/or inresponse to) the determination that the seventh set of one or moreconditions is met (e.g., tap and hold on 1×/2× button area 1 2014, whichcorresponds to the magnification adjustment affordance 2019), theelectronic device forgoes (e.g., does not do) one or more of thefollowing: changing the magnification level at which the device isprepared to capture media; updating display of the digital viewfinder tochange the focus to a representation of a respective object; changing acamera capture mode of the electronic device; locking a focus or (oralternatively, and) exposure setting; changing the exposure at which thedevice is prepared to capture media.

In accordance with some embodiments, in accordance with a determinationthat an eight set of one or more conditions is met (e.g., tap and holdon viewfinder area 2006), wherein a first condition of the eight set ofone or more conditions is met when the first gesture (e.g., a tap andhold gesture) is at the first location (e.g., on the touch-sensitivesurface, the first location corresponding to the viewfinder area 2006),the electronic device locks a focus or (or alternatively, and) exposuresetting based on a characteristic of a respective object (e.g., based onan estimated distance to the respective object) of the one or moreobjects in the field of view of the one or more cameras that correspondsto a location of the first gesture on the one or more input devices(e.g., an object that displayed at a location of the tap input on thetouch-screen display).

In accordance with some embodiments, in accordance with (and/or inresponse to) the determination that the eight set of one or moreconditions is met (e.g., tap and hold on viewfinder area), theelectronic device forgoes (e.g., does not do) one or more of thefollowing: changing the magnification level at which the device isprepared to capture media; updating display of the digital viewfinder tochange the focus to a representation of a respective object; changing acamera capture mode of the electronic device; displaying the zoomcontrol; changing the exposure at which the device is prepared tocapture media.

In accordance with some embodiments, in accordance with a determinationthat a ninth set of one or more conditions is met (e.g., swipe on zoomarea 2 2008), wherein a first condition of the ninth set of one or moreconditions is met when the first gesture (e.g., a swipe gesture) is at afifth location (e.g., on the touch-sensitive surface, the fifth locationcorresponding to the zoom area 2 2008), and a second condition of theninth set of one or more conditions is met when a zoom dial is displayedon the display, the electronic device prepares to capture media with theone or more cameras at a fifth magnification level based on a magnitudeof the first gesture.

In accordance with some embodiments, in accordance with (and/or inresponse to) the determination that the ninth set of one or moreconditions is met (e.g., swipe on zoom area 2), the electronic deviceforgoes (e.g., does not do) one or more of the following: updatingdisplay of the digital viewfinder to change the focus to arepresentation of a respective object; changing a camera capture mode ofthe electronic device; locking a focus or (or alternatively, and)exposure setting; changing the exposure at which the device is preparedto capture media.

In accordance with some embodiments, the electronic device is preparedto capture media, using a first exposure, with the one or more cameraswith a focus or (or alternatively, and) exposure setting locked, and inaccordance with a determination that a tenth set of one or moreconditions is met (e.g., swipe on the viewfinder area 2006), where afirst condition of the tenth set of one or more conditions is met whenthe first gesture (e.g., a swipe gesture, such as a swipe left or swiperight gesture) is at the first location (e.g., on the touch-sensitivesurface, the first location corresponding to the viewfinder area 2006),the electronic device prepares to capture media, using a second exposure(different from the first exposure), with the one or more cameras,wherein the second exposure is based on a magnitude of the first input.In some embodiments, when the electronic device detects the firstgesture (e.g., swipe) at a location corresponding to the viewfinderwhile the focus and/or exposure setting is locked, the electronic devicechanges a camera capture mode of the electronic device based on adirectional component of the first gesture (e.g., changing from an imagecapture mode to video capture mode, changing from preparing to capturestill media to preparing to capturing video media). In some embodiments,when the zoom control is displayed and the electronic device detects thefirst gesture (e.g., swipe) at a location corresponding to the zoomcontrol while the focus and/or exposure setting is locked, theelectronic device prepares to capture media with the one or more camerasat a dynamically-selected magnification level, where the respectivemagnification level is selected based on a magnitude (e.g., distance) ofthe first gesture. In some embodiments, when the electronic devicedetects the first gesture (e.g., swipe) at a location corresponding tothe camera capture mode while the focus and/or exposure setting islocked, the electronic device changes a camera capture mode of theelectronic device based on a directional component of the first gesture(e.g., changing from an image capture mode to video capture mode,changing from preparing to capture still media to preparing to capturingvideo media).

In accordance with some embodiments, in accordance with (and/or inresponse to) the determination that the tenth set of one or moreconditions is met (e.g., swipe on the viewfinder 2006), the electronicdevice forgoes (e.g., does not do) one or more of the following:changing the magnification level at which the device is prepared tocapture media; updating display of the digital viewfinder to change thefocus to a representation of a respective object; changing a cameracapture mode of the electronic device; displaying the zoom control; andlocking a focus or (or alternatively, and) exposure setting.

In accordance with some embodiments, an exposure setting is based on oneor more of an f-stop, an aperture size, and an ISO value (or simulationsthereof). In some embodiments, with a focus or (or alternatively, and)exposure setting locked, a swipe up or swipe down gesture at the firstlocation results in a change in the exposure setting.

In accordance with some embodiments, the first location (e.g., on thetouch-sensitive surface, the first location corresponding to theviewfinder area), the second location (e.g., on the touch-sensitivesurface, the second location corresponding to the magnificationadjustment affordance 2019), the third location (e.g., on thetouch-sensitive surface, the third location corresponding to zoom area1), the fourth location (e.g., on the touch-sensitive surface, thefourth location corresponding to the mode area), and the fifth location(e.g., on the touch-sensitive surface, the fifth location correspondingto the zoom area 2) are independent (e.g., different, distinct,separate, adjacent, do not overlap) from one another.

Note that details of the processes described above with respect tomethod 2100 (e.g., FIGS. 21A-21B) are also applicable in an analogousmanner to the methods described below and above. For example, methods700, 900, 1100, 1300, 1900, and 2300 optionally include one or more ofthe characteristics of the various methods described above withreference to method 2100. For example, elements of the viewfindermagnification techniques, affordances, and controls from among thevarious methods can be combined. For another example, the viewfinder inmethod 2100 is analogous to the viewfinder in methods 700, 900, 1100,1300, 1900, and 2300. For brevity, these details are not repeated below.For brevity, these details are not repeated below.

FIGS. 22A-22J illustrate exemplary user interfaces for navigating amonga plurality of values using an adjustable control, in accordance withsome embodiments. The user interfaces in these figures are used toillustrate the processes described below, including the processes inFIG. 23A-23B.

In accordance with some embodiments, navigating among a plurality ofvalues using an adjustable control, such as on the zoom controldescribed above with respect to FIGS. 18A-18AN and 20A-20L, withoutappropriate acceleration of the control may require the user to providemultiple swipe inputs on the control to select a desired value, such asa desired magnification level. This is particularly relevant when theadjustable control is a dial and a portion of the dial is not displayedon the display of the device and/or cannot be interacted with using thetouch-sensitive surface. For example, in the exemplary adjustablecontrol 2210 illustrated in FIG. 22B, a user's attempt to turn the dial(without acceleration) from 3× to 9× when their finger is already nearthe edge (e.g., 2216) of the touch-sensitive display may require theuser to lift their finger off of the touch-sensitive display andreposition their finger to provide additional room (e.g., additionalspace on the touch-sensitive display in the direction of the intendedinput motion) for a swipe gesture with a larger magnitude. Thisadditional input requires additional time and may make the userinterface less efficient than desired. Using appropriate acceleration toaid in navigation among a plurality of values is beneficial because, insome embodiments, it allows the user to access a larger range of valueswithout the need to reposition their finger.

FIG. 22A illustrates an electronic device 2200 with one or more cameras,such as a first camera 2202 and a second camera 2204 (e.g., on the rearof the electronic device 2200). In some examples, the first camera 2202and the second camera 2204 have fixed, but different, focal lengths. Insome examples, the focal length, field of view, and/or opticalmagnification properties of the optical system is fixed for each of thecameras. In some embodiments, in addition to having different fixedfocal lengths, the cameras (e.g., 2202, 2204) have different fixedfields of view and different fixed optical magnification properties.

FIG. 22B illustrates the electronic device 2200 with a display 2208 andone or more input devices. In some examples, the one or more inputdevices include a touch-sensitive surface. In some examples, thetouch-sensitive surface and the display 2208 combine to form atouch-sensitive display.

At FIG. 22B, the user interface includes a displayed adjustable control(e.g., 2210) for selecting a value of a plurality of values from aminimum value (e.g., 1× on the adjustable control) to a maximum value(e.g., 10× on the adjustable control). In some examples, the electronicdevice 2200 also concurrently displays (with the adjustable control2210) a viewfinder (e.g., 2206) that includes a live preview of a fieldof view of the one or more cameras (e.g., 2202, 2204). For example, thepreview includes a representation of a person (e.g., 2220). Inaccordance with some embodiments, the adjustable control (e.g., 2210)includes a magnification affordance 2212 (such as a magnificationadjustment affordance) that identifies a target or current magnificationlevel of the viewfinder. In accordance with some embodiments, theadjustable control (e.g., 2210) includes a magnification affordance 2212(such as a magnification adjustment affordance) that identifies a targetor current magnification level at which the electronic device isprepared for capturing media, such as images or video. In someembodiments, the magnification affordance 2212 and adjustable control2210 have one or more of the properties of the adjustable control andmagnification affordance described above with reference to FIGS.18A-18AN and 20A-20R.

For example, when the electronic device is in an image capture mode anddetects activation of the shutter affordance 2214, the electronic devicecaptures (e.g., stores in memory) an image with the correspondingmagnification level. For another example, when the electronic device isin a video capture mode and detects activation of the shutter affordance2214, the electronic device captures (e.g., stores in memory) video atthe corresponding magnification level until, for example, activation ofthe shutter affordance 2214 is detected. In some examples, theelectronic device enables the user to select a value of the plurality ofvalues using the adjustable control 2210 while media is not beingcaptured (e.g., before capturing an image or recording video). In someexamples, the electronic device enables the user to select a value ofthe plurality of values using the adjustable control 2210 while media isbeing captured (e.g., during recording of a video), thus resulting inthe recorded video including a zoom in and/or zoom out that correspondsto the selection of the value using the adjustable control 2210.

As illustrated in FIG. 22B, while the electronic device 2200 isdisplaying the adjustable control (e.g., 2210), the electronic device2200 receives an input (e.g., 2222), at the one or more input devices(e.g., via a touch-sensitive surface or a touch-screen display), thatincludes movement (e.g., 2224) detected via the one or more inputdevices. The movement (e.g., 2224) is constrained by a first inputboundary (e.g., 2216) and a second input boundary (e.g., 2218). Theinput (e.g., 2222) is at a location (e.g., on a touch-sensitive displayor a touch-sensitive surface) closer to the first input boundary (e.g.,2216) than the second input boundary (e.g., 2218). Note that the arrowsthat represent the movement (e.g., 2224) of inputs are illustrated forthe understanding of the reader and are not part of the user interfaceof the electronic device 2200.

In accordance with some embodiments, the one or more input devicesinclude a touch-sensitive surface, the first input boundary (e.g., 2216)is a first edge (e.g., a left edge) of the touch-sensitive surface, andthe second input boundary (e.g., 2218) is a second edge (e.g., a rightedge) of the touch-sensitive surface. In some examples, the first edgeand the second edge of the touch sensitive surface are opposite edges ofthe touch-sensitive surface (e.g., they are parallel to each other). Insome examples, the first edge and the second edge are edges of atouch-sensitive display on which the control is displayed, and where theone or more input devices and the display make up the touch-sensitivedisplay. In some examples, the first input boundary and the second inputboundary are (e.g., opposite) edges of a display-region on thetouch-sensitive display on which the control is displayed. In someexamples, the input is received at the respective touch-sensitivesurface or touch-sensitive display.

In the example of FIG. 22B, the input (e.g., 2222 of FIG. 22B) is closerto the first input boundary (e.g., 2216) than to the second inputboundary (e.g., 2218). The input is a swipe input that includes acomponent in the direction of the first input boundary (e.g., 2216).

A first movement-rate criteria includes a first requirement that therate of movement of the input (e.g., 2222) is above a firstmovement-rate threshold (e.g., a threshold that is between 0.5 and 1inches per second for a touch-sensitive surface with a width ofapproximately 3 inches in the direction of movement of the contact alongan axis that is parallel to the direction of motion of the contact, or,alternatively a threshold that is between ⅙× the width of thetouch-sensitive surface per second and ⅓× the width of thetouch-sensitive surface per second along an axis that is parallel to thedirection of motion of the contact) (e.g., a threshold greater thanzero, such as 0.9 inches/second) in order for the first movement-ratecriteria to be met. In response to receiving the input (e.g., 2222 ofFIG. 22B), in accordance with a determination that a rate of movement ofthe input (e.g., 2222) meets the first movement-rate criteria, and inaccordance with the movement (e.g., 2224) of the input (e.g., 2222)including movement toward the first input boundary (e.g., 2216), theelectronic device navigates through the plurality of values (e.g.,through a range of the values) based on a magnitude of the movement(e.g., a distance traversed by the input on the one or more inputdevices, such as a touch-sensitive surface or touch-screen display; adistance along an x-axis) and a first acceleration factor (e.g., adirection-based acceleration factor 2230, an acceleration factor greaterthan zero).

In some examples, navigating through values includes updating display ofthe adjustable control, such as by rotating the control, to reflect aselected value (or to identify a selected value). In some examples,navigating through the values includes updating one or more displayedcharacteristics, such as a magnification level of objects (e.g., 2220)displayed in a camera application viewfinder (e.g., 2206). In someexamples, navigating through the values includes preparing to capturemedia with one or more cameras based on a selected value, such asdescribed above with reference to FIGS. 18A-18AN and FIGS. 20A-20L.

As illustrated in FIG. 22C, as a result of the navigation the electronicdevice updates display of the adjustable dial to transition from theselection of the 3× magnification level in FIG. 2B to selection of the9× magnification level in FIG. 2C, as identified by the magnificationaffordance 2212. In addition, the electronic device updates theviewfinder 2206 to a corresponding magnification level, such as 9×magnification.

In the example of FIG. 22D, the input (e.g., 2222 of FIG. 22D) is closerto the first input boundary (e.g., 2216) than to the second inputboundary (e.g., 2218). The input is a swipe input that does not includea component in the direction of the first input boundary (e.g., 2216).

In response to receiving the input (e.g., 2222 of FIG. 22D), inaccordance with a determination that the rate of movement of the input(e.g., 2222) meets the first set of movement-rate criteria and adetermination that the movement of the input includes movement towardthe second input boundary (e.g., 2218) (and, optionally, does notinclude movement toward the first input boundary), the electronic devicenavigates through the plurality of values (e.g., through a range of thevalues) based on the magnitude of the movement (e.g., 2224 of FIG. 22D)and a second acceleration factor that is different from the firstacceleration factor.

As illustrated in FIG. 22E, as a result of the navigation the electronicdevice updates display of the adjustable dial to transition from theselection of the 3× magnification level in FIG. 22D to selection of the2× magnification level in FIG. 22E, as identified by the magnificationaffordance 2212. In addition, the electronic device updates theviewfinder 2206 to a corresponding magnification level, such as 2×magnification.

Thus, in the examples of FIGS. 22C-22E, user inputs (e.g., 2222 of FIG.22B and 2222 of FIG. 22D) with the same magnitude (e.g., the sameabsolute distance) cause the electronic device to navigate throughdifferent amounts of values when the input is within a particular regionof the touch-sensitive surface (e.g., on the left side of the display,on the left 40% of the display) and the movement of one input includesmovement toward the first input boundary (e.g., 2216) and the movementof the other input includes movement toward the second input boundary(e.g., 2218) (and/or does not include movement toward the first inputboundary).

As illustrated in FIGS. 22F-22G, as the input (e.g., 2222 of FIG. 22F)is closer to the edge that the input is moving towards, the firstacceleration factor increases, thereby causing the electronic device tonavigate through a larger number of values. In some examples, the firstacceleration factor (e.g., 2230) increases as the distance of the input(e.g., 2222) to the first input boundary (e.g., 2216) decreases.

Contrasting FIGS. 22B-22C with FIGS. 22F-22G helps illustrate thisconcept. The input 2222 of FIG. 22B has the same magnitude (e.g.,distance traveled along the touch-sensitive surface) as the input 2222of FIG. 22F. However, the first acceleration factor is higher for theexample in FIG. 22F because the distance between input 2222 of FIG. 22Fand the first input boundary 2216 is less than the distance betweeninput 2222 of FIG. 22C and the first input boundary 2216.

The result of this higher first acceleration factor is illustrated inFIG. 22G. In response to the input 2222 of FIG. 22F, the electronicdevice navigates the plurality of values, causing the electronic deviceto update display of the adjustable dial to transition from theselection of the 3× magnification level in FIG. 2F to selection of the10× magnification level in FIG. 2G, as identified by the magnificationaffordance 2212. In addition, the electronic device updates theviewfinder 2206 to a corresponding magnification level, such as 10×magnification. Thus, magnitudes of inputs that are closer to theboundary (or edge) are amplified more than magnitudes of inputs that arefurther from the boundary (or edge).

In accordance with some embodiments, the second acceleration factor iszero, and the first acceleration factor (e.g., a direction-basedacceleration factor 2230) is greater than zero. Thus, when the movement(e.g., 2224) is toward the second input boundary (e.g., 2218) asillustrated in FIG. 22D, the navigation resulting from the input is notamplified. In some examples, when the movement (e.g., 2224) is towardthe second input boundary (e.g., 2218) illustrated in FIG. 22D,navigating through the plurality of values occurs at a rate that is thesame as when the rate of movement of the input is toward the first inputboundary (e.g., 2216) and the rate of the input is not above the firstmovement-rate threshold. In some examples, when the movement (e.g.,2224) is toward the second input boundary (e.g., 2218) illustrated inFIG. 22D, the electronic device navigates through the same number ofvalues as when the rate of movement of the input is toward the firstinput boundary (e.g., 2216) and the rate of the input is not above thefirst movement-rate threshold. Thus, in some examples (e.g., when notapplying rate-based acceleration) an input that has movement toward thefirst input boundary (e.g., 2216), that has a particular magnitude, andthat has a low speed results in navigating through the same number ofvalues as another input that has movement away from the first inputboundary (e.g., 2216), and that has the same particular magnitude,regardless of the speed of the another input.

In accordance with some embodiments, an acceleration technique isdescribed with reference to the following acceleration equation:

Acceleration factor=1+direction-based accelerationfactor*acceleration-modification factor+rate-based accelerationfactor*acceleration-modification factor+progress-based accelerationfactor*acceleration-modification factor

In some examples, the acceleration-modification factor is not applied toone or more of: the direction-based acceleration factor, the rate-basedacceleration factor, and the progress-based acceleration factor. In someexamples, the acceleration-modification factor is applied to one or moreof: the direction-based acceleration factor, the rate-based accelerationfactor, and the progress-based acceleration factor.

In some examples, a direction-based acceleration factor 2230 is appliedwhen the movement of the input is towards a closest boundary. Asillustrated in FIG. 22H, the value of the direction-based accelerationfactor is dependent on the distance from the location of the input tothe boundary. In the example of FIG. 22H, for inputs towards the firstinput boundary, the value of the direction-based acceleration factor2230 is zero when the input is on the right 60% of the touch-sensitivesurface. In some examples, the direction-based acceleration factor 2230is multiplied by an acceleration-modification factor 2250, illustratedin FIG. 22J. In some examples, the value of theacceleration-modification factor 2250 is zero when the rate of movementof the input is less than 0.9 inches/second. As a result, the value ofthe product of the direction-based acceleration factor andacceleration-modification factor is zero when the rate of movement ofthe input is less than 0.9 inches/second, resulting in no accelerationfrom this product. In some examples, the value of theacceleration-modification factor 2250 is one when the rate of movementof the input is more than 1.8 inches/second. As a result, in someexamples, the value of the product of the direction-based accelerationfactor and acceleration-modification factor is the same as thedirection-based acceleration factor when the rate of movement of theinput is more than 1.8 inches/second, resulting in acceleration fromthis product. In the above exemplary acceleration equation, the productof the direction-based acceleration factor and acceleration-modificationfactor is added to a product of the acceleration-modification factor andthe rate-based acceleration factor 2240, illustrated in FIG. 22I. Insome examples acceleration equations, the product of the direction-basedacceleration factor and acceleration-modification factor is added to aproduct of the rate-based acceleration factor.

In some examples, when the movement of an input is slow and not toward anearby edge and there are only a few number of values to navigatethrough (e.g., based on the direction of the movement of the input), theacceleration factor is low, such as equal to 1. In some examples, whenthe movement of an input is fast and toward a nearby edge and there arenumerous values to navigate through (e.g., based on the direction of themovement of the input), the acceleration factor is high, such as equalto 9.

In some examples, when the rate of movement of the input is below thesecond movement-rate threshold (e.g., a threshold that is between 4.8and 6 inches per second for a touch-sensitive surface with a width ofapproximately 3 inches in the direction of movement of the contact alongan axis that is parallel to the direction of motion of the contact, or,alternatively a threshold that is between 1.6× the width of thetouch-sensitive surface per second and 2× the width of thetouch-sensitive surface per second along an axis that is parallel to thedirection of motion of the contact) (e.g., 5.4 inches/second), the valueof the rate-based acceleration factor 2240 is zero, resulting in noadditional acceleration. In some examples, when the rate of movement ofthe input is greater than the second movement-rate threshold (e.g., 5.4inches/second), the value of the rate-based acceleration factor 2240 isgreater than zero, resulting in additional acceleration.

In accordance with some embodiments, the second acceleration factorincreases as the distance of the input (e.g., 2222) to the second inputboundary decreases. In some examples, the second acceleration factoronly increases as the distance of the input to the second input boundary(e.g., 2218) decreases, regardless of whether the input is closer to thesecond input boundary (e.g., 2218) or to the first input boundary (e.g.,2216). In some examples, the second acceleration factor increases as thedistance of the input to the second input boundary (e.g., 2218)decreases in accordance with the input being closer to the second inputboundary (e.g., 2218) than to the first input boundary (e.g., 2216).

In accordance with some embodiments, the electronic device navigatesthrough the plurality of values (e.g., through a range of the values)using a fixed acceleration when the rate of the input is below a lowerthreshold. In some examples, in response to receiving the input (e.g.,2222), in accordance with a determination that the rate of movement ofthe input (e.g., 2222) is below the first movement-rate threshold (e.g.,a threshold that is between 0.5 and 1 inches per second for atouch-sensitive surface with a width of approximately 3 inches in thedirection of movement of the contact along an axis that is parallel tothe direction of motion of the contact, or, alternatively a thresholdthat is between ⅙× the width of the touch-sensitive surface per secondand ⅓× the width of the touch-sensitive surface per second along an axisthat is parallel to the direction of motion of the contact) (e.g., athreshold greater than zero, such as 0.9 inches/second), the electronicdevice navigates through the plurality of values (e.g., through a rangeof the values) without regard to whether the input (e.g., 2222) ismoving toward the first input boundary (e.g., 2216) or the second inputboundary (e.g., 2218) (e.g., without acceleration).

In accordance with some embodiments, in response to receiving the input(e.g., 2222), in accordance with a determination that the rate ofmovement of the input (e.g., 2222) is below the first movement-ratethreshold (e.g., a threshold that is between 0.5 and 1 inches per secondfor a touch-sensitive surface with a width of approximately 3 inches inthe direction of movement of the contact along an axis that is parallelto the direction of motion of the contact, or, alternatively a thresholdthat is between ⅙× the width of the touch-sensitive surface per secondand ⅓× the width of the touch-sensitive surface per second along an axisthat is parallel to the direction of motion of the contact) (e.g., athreshold greater than zero, such as 0.9 inches/second), navigatingthrough the plurality of values (e.g., through a range of the values)without applying an acceleration factor.

In accordance with some embodiments, a rate-based acceleration is alsointroduced. In some examples, in response to receiving the input (e.g.,2222), in accordance with a determination that the rate of movement ofthe input (e.g., 2222) meets a second movement-rate criteria, whereinthe second movement-rate criteria include a requirement that the rate ofmovement of the input (e.g., 2222) is above a second movement-ratethreshold (e.g., a threshold that is between 4.8 and 6 inches per secondfor a touch-sensitive surface with a width of approximately 3 inches inthe direction of movement of the contact along an axis that is parallelto the direction of motion of the contact, or, alternatively a thresholdthat is between 1.6× the width of the touch-sensitive surface per secondand 2× the width of the touch-sensitive surface per second along an axisthat is parallel to the direction of motion of the contact) (e.g., 2242of FIG. 22I, 5.4 inches/second) that is higher than the firstmovement-rate threshold in order for the second movement-rate criteriato be met, the electronic device navigates through the plurality ofvalues (e.g., through a range of the values) at a rate based on arate-based acceleration factor (e.g., 2240). Thus, two inputs with thesame magnitude will result in navigation through a different number ofvalues when the rate of movement of one input is above the secondmovement-rate threshold and the rate of movement the other input is notabove the second movement-rate threshold. In some examples, the rate fornavigating through the plurality of values is based on the magnitude ofthe input. In some examples, the rate-base acceleration factor is anacceleration factor that is independent of whether the input is movingtoward the first input boundary or the second input boundary and/or isindependent of the location along the x-axis of the touch-sensitivesurface. In some examples, the value of the rate-based accelerationfactor (e.g., 2240) is based on the rate of movement of the input. Insome examples, the value of the rate-based acceleration factor reaches aceiling or maximum when the rate of movement of the input reaches and/orexceeds a threshold (e.g., a threshold that is between 12 and 15 inchesper second for a touch-sensitive surface with a width of approximately 3inches in the direction of movement of the contact along an axis that isparallel to the direction of motion of the contact, or, alternatively athreshold that is between 4× the width of the touch-sensitive surfaceper second and 5× the width of the touch-sensitive surface per secondalong an axis that is parallel to the direction of motion of thecontact) (e.g., 2244 of FIG. 22I, 13.5 inches/second), and maintainsthat maximum while the rate of movement of the input is at or above thethreshold (e.g., 2244 of FIG. 22I, 13.5 inches/second).

FIG. 22J illustrates an exemplary multiplier that is optionally appliedto the direction-based acceleration factor, such as by multiplying themultiplier with the direction-based-acceleration factor. The multiplieris optionally referred to as an acceleration-modification factor. Insome examples, the value of the acceleration-modification factor (e.g.,2250) is based on the rate of movement of the input. For example, asillustrated in FIG. 22J, when the rate of the input (which is,optionally, measured as distance/time or pixels/time) is below 0.9inches/second, the value of the acceleration-modification factor iszero. In some examples, this results in the electronic device navigatingthrough the plurality of values without any direction-basedacceleration, such as when the acceleration is determined using theacceleration equation described above.

FIG. 22J illustrates that, optionally prior to navigating through theplurality of values based on the rate-based acceleration factor, theelectronic device gradually increases the acceleration-modificationfactor (e.g., 2250) applied to the navigation through the plurality ofvalues (e.g., through a range of the values) as the rate of movement ofthe input (e.g., 2222) increases from a first rate that is below thefirst movement-rate threshold (e.g., a threshold that is between 0.5 and1 inches per second for a touch-sensitive surface with a width ofapproximately 3 inches in the direction of movement of the contact alongan axis that is parallel to the direction of motion of the contact, or,alternatively a threshold that is between ⅙× the width of thetouch-sensitive surface per second and ⅓× the width of thetouch-sensitive surface per second along an axis that is parallel to thedirection of motion of the contact) (e.g., 2252, 0.9 inches/second) to arate that is at a third movement-rate threshold (e.g., a threshold thatis between 1 and 2.5 inches per second for a touch-sensitive surfacewith a width of approximately 3 inches in the direction of movement ofthe contact along an axis that is parallel to the direction of motion ofthe contact, or, alternatively a threshold that is between ⅓× the widthof the touch-sensitive surface per second and ⅚× the width of thetouch-sensitive surface per second along an axis that is parallel to thedirection of motion of the contact) (e.g., 2254, 1.8 inches/second).Thus ramp-up of the multiplier that is optionally applied to thedirection-based acceleration factor provides for smoothing out theacceleration of the navigation, as the rate of the input approaches andexceeds the first movement-rate threshold (e.g., 2252, 0.9inches/second) and reaches the third movement-rate threshold (e.g.,2254, 1.8 inches/second). In some examples, the increase is a monotonicincrease in the acceleration factor that can either be linear ornon-linear.

As illustrated in FIG. 22J, in some examples, theacceleration-modification factor is zero when the rate of movement ofthe input is below the first movement-rate threshold (e.g., a thresholdthat is between 0.5 and 1 inches per second for a touch-sensitivesurface with a width of approximately 3 inches in the direction ofmovement of the contact along an axis that is parallel to the directionof motion of the contact, or, alternatively a threshold that is between⅙× the width of the touch-sensitive surface per second and ⅓× the widthof the touch-sensitive surface per second along an axis that is parallelto the direction of motion of the contact) (e.g., 2252, 0.9inches/second). In some examples, the acceleration-modification factoris one when the rate of movement of the input is above the thirdmovement-rate threshold (e.g., a threshold that is between 1 and 2.5inches per second for a touch-sensitive surface with a width ofapproximately 3 inches in the direction of movement of the contact alongan axis that is parallel to the direction of motion of the contact, or,alternatively a threshold that is between ⅓× the width of thetouch-sensitive surface per second and ⅚× the width of thetouch-sensitive surface per second along an axis that is parallel to thedirection of motion of the contact) (e.g., 2254, 1.8 inches/second).

In accordance with some embodiments, the direction-based accelerationincludes upper and lower bounds. In some examples, the firstmovement-rate criteria include a second requirement that the rate ofmovement of the input (e.g., 2222) is below the second movement-ratethreshold (e.g., a threshold that is between 4.8 and 6 inches per secondfor a touch-sensitive surface with a width of approximately 3 inches inthe direction of movement of the contact along an axis that is parallelto the direction of motion of the contact, or, alternatively a thresholdthat is between 1.6× the width of the touch-sensitive surface per secondand 2× the width of the touch-sensitive surface per second along an axisthat is parallel to the direction of motion of the contact) (e.g., 2242of FIG. 22I, 5.4 inches/second) in order for the first movement-ratecriteria to be met. Thus, in the example, the direction-basedacceleration is not applied to the navigation when the rate of movementof the input is high enough to result in the rate-based accelerationbeing applied.

In accordance with some embodiments, a progress-based accelerationfactor is applied to the navigation. For example, navigation isoptionally accelerated in response to the input (e.g., 2222) when thedevice determines that the number of values to navigate through (e.g.,based on the direction of the movement of the input) exceeds a thresholdvalue. For example, if there are more than five items to scroll throughin a direction determined by the input, the electronic device appliesthe progress-based acceleration factor, and if there are five or feweritems to scroll through in the direction determined by the input, theelectronic device does not apply the progress-based acceleration factor(or applies a different (e.g., lower) progress-based accelerationfactor). In some examples, in response to receiving the input (e.g.,2222), and in accordance with the determination that the rate ofmovement of the input (e.g., 2222) meets the first movement-ratecriteria and that the current value of the adjustable control (e.g.,2210) is a first value of the plurality of values, navigating throughthe plurality of values (e.g., through a range of the values) at a ratebased on a first progress-based acceleration factor (e.g., anacceleration factor that changes as the current value of the adjustablecontrol moves through the plurality of values) (and, optionally, basedon the magnitude of the input). In some examples, in response toreceiving the input (e.g., 2222), and in accordance with thedetermination that the rate of movement of the input (e.g., 2222) meetsthe first movement-rate criteria and that the current value of theadjustable control (e.g., 2210) is a second value of the plurality ofvalues that is different from the first value of the plurality ofvalues, navigating through the plurality of values (e.g., through arange of the values) at a rate based on a second progress-basedacceleration factor that is different from the first progress-basedacceleration factor (and, optionally, based on the magnitude of theinput). Thus, if the range of magnification factors is between 1× and10× and the current magnification factor is 2×, the electronic deviceoptionally applies the progress-based acceleration factor when the userrequests to increase the magnification factor (e.g., from 2× towards10×) and the electronic device does not apply (or applies a differentprogress-based acceleration factor) when the user requests to decreasethe magnification factor (e.g., from 2× towards 1×). This permits theelectronic device to more easily enable navigation among larger rangesof values.

In some embodiments, the electronic device (e.g., 2200) includes one ormore cameras (e.g., 2202, 2204), and the adjustable control (e.g., 2210)is a camera zoom control and is displayed, on the display (e.g., 2208),as part of a camera capture user interface (e.g., a camera applicationuser interface) that includes (e.g., in a viewfinder 2206) a livepreview of a field of view of the one or more cameras. In someembodiments, the adjustable control (e.g., 2210) is a virtual dial thatrotates off of the display (e.g., 2208). In some examples, theadjustable control (e.g., 2210) includes one or more characteristics ofthe zoom control 1824 and 2026 described with reference to FIGS.18A-18AN and 20A-20L.

As illustrated in FIG. 22H, in some embodiments, the direction-basedacceleration speeds up the navigation of the plurality of values whenthe input toward a boundary or edge is within a predetermined distanceof that edge. In some examples, direction-based acceleration does notspeed up the navigation of the plurality of values when the input towardthe boundary or edge is not within the predetermined distance of thatedge. For example, where the left edge of the touch-sensitive surfacecorresponds to 0% of the location along the width of the touch-sensitivesurface and the right edge of the touch-sensitive surface corresponds to100% of the location along the width of the touch-sensitive surface, thedirection-based acceleration is zero when the input is on the right 60%(between 40%-100%) of the touch-sensitive surface (not within the left40%) and the input is moving toward the left edge. For another example,the direction-based acceleration is greater than zero when the input ison the left 40% of the touch-sensitive surface and the input is movingtoward the left edge. In some examples, the first movement-rate criteriainclude a third requirement that the location of the input (e.g., 2222)is within a predetermined distance to the first input boundary (e.g.,2222) in order for the first movement-rate criteria to be met. In someexamples, being within the predetermined distance to the first inputboundary is being within 400 pixels of the first input boundary or beingwithin a distance to the first input boundary that is 40% of thedistance from the first input boundary to the second input boundary.

FIGS. 23A-23B are a flow diagram illustrating a method for navigatingamong a plurality of values using an adjustable control using anelectronic device in accordance with some embodiments. Method 2300 isperformed at a device (e.g., 100, 300, 500, 2200) with a display and oneor more input devices. In some examples, the one or more input devicesinclude a touch-sensitive surface. In some examples, the touch-sensitivesurface and the display combine to form a touch-sensitive display. Insome examples, the electronic device includes one or more cameras. Someoperations in method 2300 are, optionally, combined, the order of someoperations are, optionally, changed, and some operations are,optionally, omitted.

As described below, method 2300 provides an intuitive way for navigatingamong a plurality of values using an adjustable control. The methodreduces the cognitive burden on a user for navigating among the values,thereby creating a more efficient human-machine interface. Forbattery-operated computing devices, enabling a user to navigate amongvalues faster and more efficiently conserves power and increases thetime between battery charges.

The electronic device (e.g., 2200) displays (2302), on the display, anadjustable control (e.g., a zoom control 2210) for selecting a value ofa plurality of values from a minimum value to a maximum value. In someexamples, the electronic device (e.g., 2200) also concurrently displaysa viewfinder (e.g., 2206) that includes a live preview of a field ofview of the one or more cameras (e.g., 2202, 2204). For example, thepreview includes a representation of a person (e.g., 2220). In someexamples, the electronic device 2200 includes one or more cameras (e.g.,2202, 2204) used for displaying a live (or near-live) preview in acamera application.

While displaying the adjustable control (e.g., 2210), the electronicdevice receives (2304) an input (e.g., 2222), at the one or more inputdevices, that includes movement (e.g., 2224) detected via the one ormore input devices, wherein the movement (e.g., 2224) is constrained bya first input boundary (e.g., 2216) and a second input boundary (e.g.,2218) and the input (e.g., 2222) is at a location (e.g., on atouch-sensitive display or a touch-sensitive surface) closer to thefirst input boundary (e.g., 2216) than the second input boundary (e.g.,2218). In accordance with some embodiments, the one or more inputdevices include (2306) a touch-sensitive surface.

In accordance with some embodiments, the first input boundary (e.g.,2216) is (2308) a first edge of the touch-sensitive surface, and thesecond input boundary (e.g., 2218) is a second edge of thetouch-sensitive surface. In some examples, the first edge and the secondedge of the touch sensitive surface are opposite edges of thetouch-sensitive surface. In some examples, the first edge and the secondedge are edges of a touch-sensitive display (where the one or more inputdevices and the display make up the touch-sensitive display) on whichthe control is displayed. In some examples, the first input boundary andthe second input boundary are (e.g., opposite) edges of a display-regionon the touch-sensitive display on which the control is displayed. Insome examples, the input is received at the respective touch-sensitivesurface or touch-sensitive display.

In response (2310) to receiving the input (e.g., 2222), in accordancewith a determination (2312) that a rate of movement of the input (e.g.,2222) meets a first movement-rate criteria, wherein the firstmovement-rate criteria include a first requirement that the rate ofmovement of the input (e.g., 2222) is above a first movement-ratethreshold (e.g., a threshold that is between 0.5 and 1 inches per secondfor a touch-sensitive surface with a width of approximately 3 inches inthe direction of movement of the contact along an axis that is parallelto the direction of motion of the contact, or, alternatively a thresholdthat is between ⅙× the width of the touch-sensitive surface per secondand ⅓× the width of the touch-sensitive surface per second along an axisthat is parallel to the direction of motion of the contact) (e.g., athreshold greater than zero, such as 0.9 inches/second) in order for thefirst movement-rate criteria to be met, and in accordance with themovement (e.g., 2224) of the input (e.g., 2222) including movementtoward the first input boundary (e.g., 2216), navigating through theplurality of values (e.g., through a range of the values) based on amagnitude of the movement (e.g., distance traversed by the input on theone or more input devices, such as a touch-sensitive surface ortouch-screen display) and a first acceleration factor (e.g., adirection-based acceleration factor 2230, an acceleration factor greaterthan zero). Accelerating the rate at the electronic device navigatesthrough the plurality of values allows for greater user control whenperforming a navigation, such as for magnification, while still allowingthe user to reach, in some examples, the maximum and the minimummagnification levels without requiring the user to reposition hisfingers (such as when the user's finger is positioned near the edge of atouch-sensitive surface). As a result, a recorded video that includesmagnification changes will be more stable because the user will not needto repeatedly tap on the device to adjust the magnification level.

In accordance with some embodiments, the second acceleration factor iszero, and the first acceleration factor (e.g., a direction-basedacceleration factor 2230) is greater than zero. In some examples, whenthe movement (e.g., 2224) is toward the second input boundary (e.g.,2218), navigating through the plurality of values occurs at a rate thatis the same as when the rate of movement of the input is toward thefirst input boundary (e.g., 2216) and the rate of the input is not abovethe first movement-rate threshold.

In accordance with some embodiments, the first acceleration factor(e.g., 2230) increases (2314) as the distance of the input (e.g., 2222)to the first input boundary (e.g., 2216) decreases. Accelerating thenavigation as the input approaches the boundaries of the input deviceallows the user, in some examples, to reach the maximum and the minimummagnification levels without requiring the user to reposition hisfingers (such as when the user's finger is positioned near the edge of atouch-sensitive surface). As a result, a recorded video that includesmagnification changes will be more stable because the user will not needto repeatedly tap on the device (or swipe and lift their finger and thenswipe again or otherwise adjust their grip on the device) to adjust themagnification level.

In response (2310) to receiving the input (e.g., 2222), in accordancewith a determination (2316) that the rate of movement of the input(e.g., 2222) meets the first set of movement-rate criteria and adetermination that the movement of the input includes movement towardthe second input boundary (e.g., 2218), the electronic device navigatesthrough the plurality of values (e.g., through a range of the values)based on the magnitude of the movement (e.g., 2224) and a secondacceleration factor that is different from the first accelerationfactor.

In accordance with some embodiments, the second acceleration factorincreases as the distance of the input (e.g., 2222) to the second inputboundary decreases. In some examples, the second acceleration factoronly increases as the distance of the input to the second input boundary(e.g., 2218) decreases, regardless of whether the input is closer to thesecond input boundary (e.g., 2218) or to the first input boundary (e.g.,2216). In some examples, the second acceleration factor increases as thedistance of the input to the second input boundary (e.g., 2218)decreases in accordance with the input being closer to the second inputboundary (e.g., 2218) than to the first input boundary (e.g., 2216).

In accordance with some embodiments, in response to receiving the input(e.g., 2222), in accordance with a determination that the rate ofmovement of the input (e.g., 2222) is below the first movement-ratethreshold (e.g., a threshold that is between 0.5 and 1 inches per secondfor a touch-sensitive surface with a width of approximately 3 inches inthe direction of movement of the contact along an axis that is parallelto the direction of motion of the contact, or, alternatively a thresholdthat is between ⅙× the width of the touch-sensitive surface per secondand ⅓× the width of the touch-sensitive surface per second along an axisthat is parallel to the direction of motion of the contact) (e.g., athreshold greater than zero, such as 0.9 inches/second), the electronicdevice navigates through the plurality of values (e.g., through a rangeof the values) without regard to whether the input (e.g., 2222) ismoving toward the first input boundary (e.g., 2216) or the second inputboundary (e.g., 2218) (e.g., without acceleration). Not applying anacceleration factor allows the user to navigate through the plurality ofvalues, such as when using a zoom control, with greater precision. Amagnification adjustment using greater precision results in a recordedvideo with fewer defects (e.g., jerky zooming, unsteady filming, etc.).

In accordance with some embodiments, in response to receiving the input(e.g., 2222), in accordance with a determination that the rate ofmovement of the input (e.g., 2218) is below the first movement-ratethreshold (e.g., a threshold that is between 0.5 and 1 inches per secondfor a touch-sensitive surface with a width of approximately 3 inches inthe direction of movement of the contact along an axis that is parallelto the direction of motion of the contact, or, alternatively a thresholdthat is between ⅙× the width of the touch-sensitive surface per secondand ⅓× the width of the touch-sensitive surface per second along an axisthat is parallel to the direction of motion of the contact) (e.g., athreshold greater than zero, such as 0.9 inches/second), navigatingthrough the plurality of values (e.g., through a range of the values)without applying an acceleration factor.

In accordance with some embodiments, in response to receiving the input(e.g., 2222), in accordance with a determination that the rate ofmovement of the input (e.g., 2222) meets a second movement-ratecriteria, wherein the second movement-rate criteria include arequirement that the rate of movement of the input (e.g., 2222) is abovea second movement-rate threshold (e.g., a threshold that is between 4.8and 6 inches per second for a touch-sensitive surface with a width ofapproximately 3 inches in the direction of movement of the contact alongan axis that is parallel to the direction of motion of the contact, or,alternatively a threshold that is between 1.6× the width of thetouch-sensitive surface per second and 2× the width of thetouch-sensitive surface per second along an axis that is parallel to thedirection of motion of the contact) (e.g., 2242 of FIG. 22I, 5.4inches/second) that is higher than the first movement-rate threshold inorder for the second movement-rate criteria to be met, the electronicdevice (e.g., 2200) navigates through the plurality of values (e.g.,through a range of the values) at a rate based on a rate-basedacceleration factor (e.g., 2240). In some examples, the rate fornavigating through the plurality of values is also based on themagnitude of the input. In some examples, the rate-base accelerationfactor is an acceleration factor that is independent of whether theinput is moving toward the first input boundary or the second inputboundary and/or is independent of the location along the x-axis of thetouch-sensitive surface. In some examples, the value of the rate-basedacceleration factor (e.g., 2240) is based on the rate of movement of theinput. In some examples, the value of the rate-based acceleration factorreaches a ceiling or maximum when the rate of movement of the inputreaches and/or exceeds a threshold (e.g., a threshold that is between 12and 15 inches per second for a touch-sensitive surface with a width ofapproximately 3 inches in the direction of movement of the contact alongan axis that is parallel to the direction of motion of the contact, or,alternatively a threshold that is between 4× the width of thetouch-sensitive surface per second and 5× the width of thetouch-sensitive surface per second along an axis that is parallel to thedirection of motion of the contact) (e.g., 2244 of FIG. 22I, 13.5inches/second), and maintains that maximum while the rate of movement ofthe input is at or above the threshold (e.g., 2244 of FIG. 22I, 13.5inches/second).

In accordance with some embodiments, and, optionally, prior tonavigating through the plurality of values based on the rate-basedacceleration factor, the electronic device gradually increases anacceleration-modification factor (e.g., 2250) applied to the navigationthrough the plurality of values (e.g., through a range of the values) asthe rate of movement of the input (e.g., 2222) increases from a firstrate that is below the first movement-rate threshold (e.g., a thresholdthat is between 0.5 and 1 inches per second for a touch-sensitivesurface with a width of approximately 3 inches in the direction ofmovement of the contact along an axis that is parallel to the directionof motion of the contact, or, alternatively a threshold that is between⅙× the width of the touch-sensitive surface per second and ⅓× the widthof the touch-sensitive surface per second along an axis that is parallelto the direction of motion of the contact) (e.g., 2252, where the firstmovement-rate threshold is 0.9 inches/second) to a rate that is at athird movement-rate threshold (e.g., a threshold that is between 1 and2.5 inches per second for a touch-sensitive surface with a width ofapproximately 3 inches in the direction of movement of the contact alongan axis that is parallel to the direction of motion of the contact, or,alternatively a threshold that is between ⅓× the width of thetouch-sensitive surface per second and ⅚× the width of thetouch-sensitive surface per second along an axis that is parallel to thedirection of motion of the contact) (e.g., 2254, where the thirdmovement-rate threshold is 1.8 inches/second). In some examples, theincrease is a monotonic increase in the acceleration factor that islinear. In some examples, the increase is a monotonic increase in theacceleration factor that is non-linear.

In accordance with some embodiments, the first movement-rate criteriainclude a second requirement that the rate of movement of the input(e.g., 2222) is below the second movement-rate threshold (e.g., athreshold that is between 4.8 and 6 inches per second for atouch-sensitive surface with a width of approximately 3 inches in thedirection of movement of the contact along an axis that is parallel tothe direction of motion of the contact, or, alternatively a thresholdthat is between 1.6× the width of the touch-sensitive surface per secondand 2× the width of the touch-sensitive surface per second along an axisthat is parallel to the direction of motion of the contact) (e.g., 2242of FIG. 22I, 5.4 inches/second) in order for the first movement-ratecriteria to be met.

In accordance with some embodiments, the acceleration-modificationfactor is zero when the rate of movement of the input is below the firstmovement-rate threshold (e.g., a threshold that is between 0.5 and 1inches per second for a touch-sensitive surface with a width ofapproximately 3 inches in the direction of movement of the contact alongan axis that is parallel to the direction of motion of the contact, or,alternatively a threshold that is between ⅙× the width of thetouch-sensitive surface per second and ⅓× the width of thetouch-sensitive surface per second along an axis that is parallel to thedirection of motion of the contact) (e.g., 2252, where the firstmovement-rate threshold is 0.9 inches/second). In some examples, theacceleration-modification factor is one when the rate of movement of theinput is above the third movement-rate threshold (e.g., a threshold thatis between 1 and 2.5 inches per second for a touch-sensitive surfacewith a width of approximately 3 inches in the direction of movement ofthe contact along an axis that is parallel to the direction of motion ofthe contact, or, alternatively a threshold that is between ⅓× the widthof the touch-sensitive surface per second and ⅚× the width of thetouch-sensitive surface per second along an axis that is parallel to thedirection of motion of the contact) (e.g., 2254, where the thirdmovement-rate threshold is 1.8 inches/second).

In accordance with some embodiments, in response to receiving the input(e.g., 2222), in accordance with the determination that the rate ofmovement of the input (e.g., 2222) meets the first movement-ratecriteria and that the current value of the adjustable control (e.g.,2210) is a first value of the plurality of values, the electronic device(e.g., 2200) navigates through the plurality of values (e.g., through arange of the values) at a rate based on a first progress-basedacceleration factor (e.g., an acceleration factor that changes as thecurrent value of the adjustable control moves through the plurality ofvalues) (and, optionally, based on the magnitude of the input). Inresponse to receiving the input (e.g., 2222), in accordance with thedetermination that the rate of movement of the input (e.g., 2222) meetsthe first movement-rate criteria and that the current value of theadjustable control (e.g., 2210) is a second value of the plurality ofvalues that is different from the first value of the plurality ofvalues, the electronic device (e.g., 2200) navigates through theplurality of values (e.g., through a range of the values) at a ratebased on a second progress-based acceleration factor that is differentfrom the first progress-based acceleration factor (and, optionally,based on the magnitude of the input).

In accordance with some embodiments, the electronic device (e.g., 2200)includes one or more cameras (e.g., 2202, 2204), and the adjustablecontrol (e.g., 2210) is a camera zoom control and is displayed, on thedisplay (e.g., 2208), as part of a camera capture user interface (e.g.,a camera application user interface) that includes (e.g., in aviewfinder 2206) a live preview of a field of view of the one or morecameras. In some examples, the adjustable control (e.g., 2210) includesone or more characteristics of the zoom control 1824 and 2026 describedwith reference to FIGS. 18A-18AN and 20A-20L.

In accordance with some embodiments, the adjustable control (e.g., 2210)is a virtual dial that rotates off of the display (e.g., 2208). In someexamples, the virtual dial rotates while maintaining an axis ofrotation, causing values previously displayed as part of the virtualdial to no longer be displayed. In some examples, the virtual dialincludes one or more characteristics of the zoom control 1824 and 2026described with reference to FIGS. 18A-18AN and 20A-20L. The adjustablecontrol rotating off the display allows for relevant information/data tobe displayed and for information that is less relevant (e.g., theportions of the dial that are furthest from the currently selectedvalue) to not be displayed when the adjustable control is in use.

In accordance with some embodiments, the first movement-rate criteriainclude a third requirement that the location of the input (e.g., 2222)is within a predetermined distance to the first input boundary (e.g.,2222) (e.g., within 400 pixels of the first input boundary, within adistance to the first input boundary that is 40% of the distance fromthe first input boundary to the second input boundary) in order for thefirst movement-rate criteria to be met.

Note that details of the processes described above with respect tomethod 2300 (e.g., FIGS. 23A-23B) are also applicable in an analogousmanner to the methods described above. For example, methods 700, 900,1100, 1300, 1900, and 2100 optionally include one or more of thecharacteristics of the various methods described above with reference tomethod 2300. For example, elements of the viewfinder magnificationtechniques, affordances, and controls from among the various methods canbe combined. For another example, the viewfinder in method 2300 isanalogous to the viewfinder in methods 900, 1100, 1300, 1900, and 2100.For brevity, these details are not repeated below.

In accordance with some embodiments, FIG. 24 shows an exemplaryfunctional block diagram of an electronic device 2400 configured inaccordance with the principles of the various described embodiments. Inaccordance with some embodiments, the functional blocks of electronicdevice 2400 are configured to perform the techniques described above.The functional blocks of the device 2400 are, optionally, implemented byhardware, software, or a combination of hardware and software to carryout the principles of the various described examples. It is understoodby persons of skill in the art that the functional blocks described inFIG. 24 are, optionally, combined or separated into sub-blocks toimplement the principles of the various described examples. Therefore,the description herein optionally supports any possible combination orseparation or further definition of the functional blocks describedherein.

As shown in FIG. 24, an electronic device 2400 include one or morecamera units 2406; one or more input device units 2404; a display unit2402; and a processing unit 2410 coupled to the one or more camera units2406, the display unit 2402, and the one or more input device units2404.

In accordance with some embodiments, the processing unit 2410 isconfigured to: concurrently enable display (e.g., with display enablingunit 2412), on the display unit 2402, of: a digital viewfinder forcapturing media with the one or more camera units 2406 at a firstmagnification level; and a magnification adjustment affordance; whileconcurrently displaying (e.g., with display enabling unit 2412) thedigital viewfinder and the magnification adjustment affordance detect(e.g., with detecting unit 2416), via the one or more input device units2404, a first gesture at a location corresponding to the magnificationadjustment affordance; in accordance with determination that the firstgesture is of a first type, prepare (e.g., with preparing unit 2414) tocapture media with the one or more camera units 2406 at a secondmagnification level different from the first magnification level; inaccordance with a determination that the first gesture is of a secondtype different from the first type: prepare (e.g., with preparing unit2414) to capture media with the one or more camera units 2406 at adynamically-selected magnification level different from the firstmagnification level, wherein the dynamically-selected magnificationlevel is selected based on a magnitude.

In accordance with some embodiments, in accordance with a determinationthat the magnitude of the first gesture is a first magnitude, thedynamically-selected magnification level is a first dynamically-selectedmagnification level different from the first magnification level; and inaccordance with a determination that the magnitude of the first gestureis a second magnitude that is different from the first magnitude, thedynamically-selected magnification level is a seconddynamically-selected magnification level different from the firstmagnification level and the first dynamically-selected magnificationlevel.

In accordance with some embodiments, in accordance with thedetermination that the first gesture is of the second type differentfrom the first type, enable display (e.g., with display enabling unit2412), on the display unit 2402, of a zoom control; and in accordancewith the determination that the first gesture is of the first type,forgo enabling display of the zoom control.

In accordance with some embodiments, in accordance with thedetermination that the first gesture is of the first type, enabledisplay (e.g., with display enabling unit 2412), on the display unit2402 at a location that corresponds to the magnification adjustmentaffordance, of a representation of the second magnification level; andin accordance with the determination that the first gesture is of thesecond type, enable display (e.g., with display enabling unit 2412), onthe display unit 2402 at the location that corresponds to themagnification adjustment affordance, of a representation of thedynamically-selected magnification level.

In accordance with some embodiments, in accordance with a determinationthat the first gesture is of a third type different from the first typeand the second type, enable display (e.g., with display enabling unit2412), on the display unit 2402, of a zoom control for selecting adynamically-selected magnification level from a plurality ofmagnification levels.

In accordance with some embodiments, wherein displaying (e.g., withdisplay enabling unit 2412), on the display unit 2402, the zoom controlfurther includes shifting (e.g., with display enabling unit 2412) adisplay location, on the display unit 2402, of the magnificationadjustment affordance away from an edge of the display toward a centerof the display.

In accordance with some embodiments, enabling display, on the displayunit 2402, of the zoom control further includes: reducing enable display(e.g., with display enabling unit 2412) a display size of themagnification adjustment affordance.

In accordance with some embodiments, enabling display, on the displayunit 2402, of the zoom control further includes: displaying (e.g., withdisplay enabling unit 2412) a portion of a zoom control dial.

In accordance with some embodiments, the first type is a tap gesture andthe second type is a swipe gesture.

In accordance with some embodiments, enabling display of the zoomcontrol includes sliding the zoom control onto the display.

In accordance with some embodiments, while displaying (e.g., withdisplay enabling unit 2412) the zoom control and while the electronicdevice is prepared to capture media with the one or more cameras at athird magnification level: detect (e.g., with detecting unit 2416), viathe one or more input device units, a second gesture at a locationcorresponding to the zoom control; and in accordance with adetermination that the second gesture is of the second type: rotatedisplay of the zoom control; and prepare (e.g., with preparing unit2414) to capture media with the one or more camera units 2406 at afourth magnification level that is different from the thirdmagnification level.

In accordance with some embodiments, in accordance with a determinationthat a rate of the second gesture is less than a predeterminedthreshold, zoom (e.g., with zooming unit 2418) the digital viewfinder ata first rate; and in accordance with a determination that the rate ofthe second gesture is greater than the predetermined threshold, zoom(e.g., with zooming unit 2418) the digital viewfinder at a second rate,wherein the first rate is less than the second rate.

In accordance with some embodiments, in accordance with a determinationthat the rate of change of the second gesture is less than a secondpredetermined threshold, zoom (e.g., with zooming unit 2418) the digitalviewfinder at a first rate; and in accordance with a determination thatthe rate of the second gesture is greater than the second predeterminedthreshold, zoom (e.g., with zooming unit 2418) the digital viewfinder ata second rate, wherein the first rate is less than the second rate.

In accordance with some embodiments, while displaying (e.g., withdisplay enabling unit 2412), on the display unit 2402, a zoom controlfor changing the magnification level for capturing media with the one ormore cameras, wherein the zoom control has a degree of granularity:detect (e.g., with detecting unit 2416) a third gesture at a locationcorresponding to the zoom control; and in response to detecting (e.g.,with detecting unit 2416) the third gesture, change the degree ofgranularity of the zoom control.

In accordance with some embodiments, the zoom control includesrepresentations of a plurality of magnification levels, and changing thedegree of granularity of the zoom control includes changing the spacingbetween the representations of the plurality of magnification levels.

In accordance with some embodiments, a displayed zoom control includesrepresentations of a plurality of magnification levels, the processingunit further configure to: detect (e.g., with detecting unit 2416) arequest to change between a portrait mode and a landscape mode; and inresponse to detecting (e.g., with detecting unit 2416) the request tochange the electronic device between the portrait mode and the landscapemode: rotate the representations of the plurality of magnificationlevels.

In accordance with some embodiments, enable display (e.g., with displayenabling unit 2412), on the display unit 2402, of a representation of acurrent magnification level for capturing media with the one or morecameras at a location that corresponds to the magnification adjustmentaffordance.

In accordance with some embodiments, in accordance with not detecting(e.g., with detecting unit 2416), via the one or more input deviceunits, input at any location corresponding to the zoom control for apredetermined period of time: sliding display of the magnificationadjustment affordance toward the edge of the display and away from thecenter of the display.

In accordance with some embodiments, in accordance with not detecting(e.g., with detecting unit 2416), via the one or more input deviceunits, input at any location corresponding to the zoom control for apredetermined period of time: cease display (e.g., with display enablingunit 2412) of the zoom control.

In accordance with some embodiments, while displaying (e.g., withdisplay enabling unit 2412), on the display unit 2402, the digitalviewfinder for capturing media with the one or more camera units 2406 ata fourth magnification level and not displaying (e.g., with displayenabling unit 2412), on the display unit 2402, the zoom control: detect(e.g., with detecting unit 2416), via the one or more input devicesunits, a fourth gesture at a location corresponding to the digitalviewfinder; and in accordance with the determination that the fourthgesture is of a fourth type: prepare (e.g., with preparing unit 2414) tocapture media with the one or more camera units 2406 at a seconddynamically-selected magnification level different from the fourthmagnification level, wherein the respective magnification level isselected based on a magnitude of the fourth gesture; and forgodisplaying (e.g., with display enabling unit 2412), on the display unit2402, the zoom control.

The operations described above with reference to FIG. 19A-19B are,optionally, implemented by components depicted in FIGS. 1A-1B or FIG.24. For example, displaying operation 2104 is, optionally, implementedby event sorter 170, event recognizer 180, and event handler 190. Eventmonitor 171 in event sorter 170 detects a contact on touch-sensitivedisplay 112, and event dispatcher module 174 delivers the eventinformation to application 136-1. A respective event recognizer 180 ofapplication 136-1 compares the event information to respective eventdefinitions 186, and determines whether a first contact at a firstlocation on the touch-sensitive surface corresponds to a predefinedevent or sub event, such as activation of an affordance on a userinterface. When a respective predefined event or sub-event is detected,event recognizer 180 activates an event handler 190 associated with thedetection of the event or sub-event. Event handler 190 optionallyutilizes or calls data updater 176 or object updater 177 to update theapplication internal state 192. In some embodiments, event handler 190accesses a respective GUI updater 178 to update what is displayed by theapplication. Similarly, it would be clear to a person having ordinaryskill in the art how other processes can be implemented based on thecomponents depicted in FIGS. 1A-1B.

In accordance with some embodiments, FIG. 25 shows an exemplaryfunctional block diagram of an electronic device 2500 configured inaccordance with the principles of the various described embodiments. Inaccordance with some embodiments, the functional blocks of electronicdevice 2500 are configured to perform the techniques described above.The functional blocks of the device 2500 are, optionally, implemented byhardware, software, or a combination of hardware and software to carryout the principles of the various described examples. It is understoodby persons of skill in the art that the functional blocks described inFIG. 25 are, optionally, combined or separated into sub-blocks toimplement the principles of the various described examples. Therefore,the description herein optionally supports any possible combination orseparation or further definition of the functional blocks describedherein.

As shown in FIG. 25, an electronic device 2500 includes a display unit2502 configured to display a graphic user interface, one or more inputdevice units 2504, one or more camera units 2522, and optionally, atouch-sensitive surface unit 2508 configured to receive contacts, and, aprocessing unit 2506 coupled to the display unit 2502, the one or morecamera units 2522, the one or more input device units 2504 and,optionally, the touch-sensitive surface unit 2508. In some embodiments,the touch-sensitive surface unit 2508 and the display unit 2502 form atouch-sensitive display unit 2510. In some embodiments, the processingunit 2506 includes a display enabling unit 2512, a detecting unit 2514,a preparing unit 2516, and a changing unit 2518.

The processing unit 2506 is configured to: while the device is preparedto capture media with the one or more camera units at a firstmagnification level, enable display (e.g., with display enabling unit),on the display unit 2502, of: a digital viewfinder based on datareceived from the one or more camera units, wherein the digitalviewfinder includes a representation of one or more objects within afield of view of the one or more camera units 2522; while displaying thedigital viewfinder, detect (e.g., using detecting unit 2514), via theone or more input device units 2504, a first gesture; in accordance witha determination that a first set of one or more conditions is met,wherein a first condition of the first set of one or more conditions ismet when the first gesture is at a first location, update display (e.g.,using display enabling unit 2512) of the digital viewfinder to focus ona representation of a respective object of the one or more objects inthe field of view of the one or more camera units 2522 that correspondsto a location of the first gesture on the one or more input device units2508 without preparing to capture media with the one or more cameraunits 2522 at a second magnification level different from the firstmagnification level; and in accordance with a determination that asecond set of one or more conditions is met, wherein a first conditionof the second set of one or more conditions is met when the firstgesture is at a second location different from the first location,prepare (e.g., using preparing unit 2515) to capture media with the oneor more camera units 2522 at the second magnification level differentfrom the first magnification level.

In accordance with some embodiments, preparing to capture media with theone or more camera units 2522 at the second magnification level includesupdating display of the digital viewfinder to show a preview at thesecond magnification level.

In accordance with some embodiments, displaying the digital viewfinderwhile the device is prepared to capture media with the one or morecamera units 2522 at the first magnification level includes displaying,on the display unit 2502, representations of the one or more objects atthe first magnification level.

In accordance with some embodiments, the processing unit furtherconfigured to: in accordance with a determination that a third set ofone or more conditions is met, wherein a first condition of the thirdset of one or more conditions is met when the first gesture is at athird location different from the first location, prepare (e.g., usingpreparing unit 2516) to capture media with the one or more camera unitsat a third magnification level that is based on a magnitude of the firstgesture.

In accordance with some embodiments, the processing unit furtherconfigured to: in accordance with a determination that a fourth set ofone or more conditions is met, wherein a first condition of the fourthset of one or more conditions is met when the first gesture is at thefirst location, change (e.g., using changing unit 2518) a camera capturemode of the electronic device.

In accordance with some embodiments, the processing unit furtherconfigured to: in accordance with a determination that a fifth set ofone or more conditions is met, wherein a first condition of the fifthset of one or more conditions is met when the first gesture is at afourth location different from the first location, the second location,and the third location, change (e.g., using changing unit 2518) a cameracapture mode of the electronic device to a mode corresponding to alocation of the first gesture.

In accordance with some embodiments, the processing unit furtherconfigured to: in accordance with a determination that a sixth set ofone or more conditions is met, wherein a first condition of the sixthset of one or more conditions is met when the first gesture is at thefourth location, change (e.g., using changing unit 2518) a cameracapture mode of the electronic device based on a directional componentof the first gesture.

In accordance with some embodiments, the electronic device is configuredto change among one or more of: a first camera capture mode, wherein theelectronic device is configurable, while in the first camera capturemode, to prepare to capture media within a first range of magnificationlevels, a second camera capture mode, wherein the electronic device isconfigurable, while in the second camera capture mode, to prepare tocapture media within a second range of magnification levels, wherein thesecond range of magnification levels is within the first range ofmagnification levels, a third camera capture mode, wherein theelectronic device is configurable, while in the third camera capturemode, to prepare to capture media within a third range of magnificationlevels, wherein the third range of magnification levels is within thesecond range of magnification levels, and a fourth camera capture mode,wherein the electronic device is configurable, while in the fourthcamera capture mode, to prepare to capture media at a firstpredetermined magnification level and at a second predeterminedmagnification level, wherein the first predetermined magnification leveland the second predetermined magnification level are within the secondrange of magnification levels.

In accordance with some embodiments, a second condition of the first setof one or more conditions is met when a zoom control is not displayed.

In accordance with some embodiments, the processing unit furtherconfigured to: in accordance with a determination that a seventh set ofone or more conditions is met, wherein a first condition of the seventhset of one or more conditions is met when the first gesture is at thesecond location, enable display (e.g., using display enabling unit2512), on the display unit 2502, of the zoom control.

In accordance with some embodiments, the processing unit furtherconfigured to: in accordance with a determination that an eight set ofone or more conditions is met, wherein a first condition of the eightset of one or more conditions is met when the first gesture is at thefirst location, lock a focus or exposure setting based on acharacteristic of a respective object of the one or more objects in thefield of view of the one or more camera units 2522 that corresponds to alocation of the first gesture on the one or more input device units2504.

In accordance with some embodiments, the processing unit furtherconfigured to: in accordance with a determination that a ninth set ofone or more conditions is met, wherein a first condition of the ninthset of one or more conditions is met when the first gesture is at afifth location, and a second condition of the ninth set of one or moreconditions is met when a zoom dial is displayed on the display unit2502, prepare (e.g., using preparing unit 2516) to capture media withthe one or more camera units at a fifth magnification level based on amagnitude of the first gesture.

In accordance with some embodiments, the processing unit furtherconfigured to: wherein the electronic device is prepared to capturemedia, using a first exposure, with the one or more camera units 2522with a focus or exposure setting locked; and in accordance with adetermination that a tenth set of one or more conditions is met, whereina first condition of the tenth set of one or more conditions is met whenthe first gesture is at the first location, prepare (e.g., usingpreparing unit 2516) to capture media, using a second exposure, with theone or more camera units 2522, wherein the second exposure is based on amagnitude of the first input.

In accordance with some embodiments, the first location, the secondlocation, the third location, the fourth location, and the fifthlocation are independent from one another.

The operations described above with reference to FIG. 21A-21B are,optionally, implemented by components depicted in FIGS. 1A-1B or FIG.25. For example, updating operation 2116 is, optionally, implemented byevent sorter 170, event recognizer 180, and event handler 190. Eventmonitor 171 in event sorter 170 detects a contact on touch-sensitivedisplay 112, and event dispatcher module 174 delivers the eventinformation to application 136-1. A respective event recognizer 180 ofapplication 136-1 compares the event information to respective eventdefinitions 186, and determines whether a first contact at a firstlocation on the touch-sensitive surface corresponds to a predefinedevent or sub event, such as activation of an affordance on a userinterface. When a respective predefined event or sub-event is detected,event recognizer 180 activates an event handler 190 associated with thedetection of the event or sub-event. Event handler 190 optionallyutilizes or calls data updater 176 or object updater 177 to update theapplication internal state 192. In some embodiments, event handler 190accesses a respective GUI updater 178 to update what is displayed by theapplication. Similarly, it would be clear to a person having ordinaryskill in the art how other processes can be implemented based on thecomponents depicted in FIGS. 1A-1B.

In accordance with some embodiments, FIG. 26 shows an exemplaryfunctional block diagram of an electronic device 2600 configured inaccordance with the principles of the various described embodiments. Inaccordance with some embodiments, the functional blocks of electronicdevice 2600 are configured to perform the techniques described above.The functional blocks of the device 2600 are, optionally, implemented byhardware, software, or a combination of hardware and software to carryout the principles of the various described examples. It is understoodby persons of skill in the art that the functional blocks described inFIG. 26 are, optionally, combined or separated into sub-blocks toimplement the principles of the various described examples. Therefore,the description herein optionally supports any possible combination orseparation or further definition of the functional blocks describedherein.

As shown in FIG. 26, an electronic device 2600 includes a display unit2602 configured to display a graphic user interface and one or moreinput device units 2604, optionally, a touch-sensitive surface unit 2608configured to receive contacts, and one or more camera units 2622, and aprocessing unit 2606 coupled to the display unit 2602 and the one ormore input device units 2604 and, optionally, the touch-sensitivesurface unit 2608 and the one or more camera units 2622. In someembodiments, the touch-sensitive surface unit 2608 and the display unit2602 form a touch-sensitive display unit 2610. In some embodiments, theprocessing unit 2606 includes a display enabling unit 2612, a receivingunit 2614, a determining unit 2616, a navigating unit 2618, and anincreasing unit 2620.

The processing unit 2606 is configured to: enable display (e.g., withdisplay enabling unit 2612), on the display unit 2602, of an adjustablecontrol for selecting a value of a plurality of values from a minimumvalue to a maximum value; while enabling display (e.g., with displayenabling unit 2612) of the adjustable control, receive (e.g., withreceiving unit 2614) an input, at the one or more input devices units2604, that includes movement detected via the one or more input devicesunits 2604, wherein the movement is constrained by a first inputboundary and a second input boundary and the input is at a locationcloser to the first input boundary than the second input boundary; inresponse to receiving the input: in accordance with a determination(e.g., using determining unit 2616) that a rate of movement of the inputmeets a first movement-rate criteria, wherein the first movement-ratecriteria include a first requirement that the rate of movement of theinput is above a first movement-rate threshold in order for the firstmovement-rate criteria to be met, and in accordance with the movement ofthe input including movement toward the first input boundary, navigate(e.g., using navigating unit 2618) through the plurality of values basedon a magnitude of the movement and a first acceleration factor; and inaccordance with a determination that the rate of movement of the inputmeets the first set of movement-rate criteria and a determination (e.g.,using determining unit 2616) that the movement of the input includesmovement toward the second input boundary, navigate (e.g., usingnavigating unit 2618) through the plurality of values based on themagnitude of the movement and a second acceleration factor that isdifferent from the first acceleration factor.

In accordance with some embodiments, the one or more input devices units2604 include a touch-sensitive surface unit 2608, the first inputboundary is a first edge of the touch-sensitive surface unit 2608, andthe second input boundary is a second edge of the touch-sensitivesurface unit 2608.

In accordance with some embodiments, the second acceleration factor iszero, and the first acceleration factor is greater than zero.

In accordance with some embodiments, the first acceleration factorincreases as the distance of the input to the first input boundarydecreases.

In accordance with some embodiments, the second acceleration factorincreases as the distance of the input to the second input boundarydecreases.

In accordance with some embodiments, the processing unit 2606 is furtherconfigured to: in response to receiving the input: in accordance with adetermination (e.g., using determining unit 2616) that the rate ofmovement of the input is below the first movement-rate threshold,navigate (e.g., using navigating unit 2618) through the plurality ofvalues without regard to whether the input is moving toward the firstinput boundary or the second input boundary.

In accordance with some embodiments, the processing unit 2606 is furtherconfigured to: in response to receiving the input: in accordance with adetermination (e.g., using determining unit 2616) that the rate ofmovement of the input is below the first movement-rate threshold,navigate (e.g., using navigating unit 2618) through the plurality ofvalues without applying an acceleration factor.

In accordance with some embodiments, the processing unit 2606 is furtherconfigured to: in response to receiving the input: in accordance with adetermination (e.g., using determining unit 2616) that the rate ofmovement of the input meets a second movement-rate criteria, wherein thesecond movement-rate criteria include a requirement that the rate ofmovement of the input is above a second movement-rate threshold that ishigher than the first movement-rate threshold in order for the secondmovement-rate criteria to be met, navigate (e.g., using navigating unit2618) through the plurality of values at a rate based on a rate-basedacceleration factor.

In accordance with some embodiments, the processing unit 2606 is furtherconfigured to: gradually increase (e.g., using increasing unit 2620) anacceleration-modification factor applied to the navigation through theplurality of values as the rate of movement of the input increases froma first rate that is below the first movement-rate threshold to a ratethat is at a third movement-rate threshold.

In accordance with some embodiments, the first movement-rate criteriainclude a second requirement that the rate of movement of the input isbelow the second movement-rate threshold in order for the firstmovement-rate criteria to be met.

In accordance with some embodiments, the acceleration-modificationfactor is zero when the rate of movement of the input is below the firstmovement-rate threshold.

In accordance with some embodiments, the processing unit 2606 is furtherconfigured to: in response to receiving the input: in accordance withthe determination (e.g., using determining unit 2616) that the rate ofmovement of the input meets the first movement-rate criteria and thatthe current value of the adjustable control is a first value of theplurality of values, navigate (e.g., using navigating unit 2618) throughthe plurality of values at a rate based on a first progress-basedacceleration factor; and in accordance with the determination (e.g.,using determining unit 2616) that the rate of movement of the inputmeets the first movement-rate criteria and that the current value of theadjustable control is a second value of the plurality of values that isdifferent from the first value of the plurality of values, navigate(e.g., using navigating unit 2618) through the plurality of values at arate based on a second progress-based acceleration factor that isdifferent from the first progress-based acceleration factor.

In accordance with some embodiments, the electronic device 2600 includesone or more cameras units 2622, and the adjustable control is a camerazoom control and is displayed, on the display unit 2602, as part of acamera capture user interface that includes a live preview of a field ofview of the one or more cameras units 2622.

In accordance with some embodiments, the adjustable control is a virtualdial that rotates off of the display unit 2602.

In accordance with some embodiments, the first movement-rate criteriainclude a third requirement that the location of the input is within apredetermined distance to the first input boundary in order for thefirst movement-rate criteria to be met.

The operations described above with reference to FIG. 23A-23B are,optionally, implemented by components depicted in FIGS. 1A-1B or FIG.26. For example, displaying operation 2302 and receiving operation 2304are, optionally, implemented by event sorter 170, event recognizer 180,and event handler 190. Event monitor 171 in event sorter 170 detects acontact on touch-sensitive display 112, and event dispatcher module 174delivers the event information to application 136-1. A respective eventrecognizer 180 of application 136-1 compares the event information torespective event definitions 186, and determines whether a first contactat a first location on the touch-sensitive surface corresponds to apredefined event or sub event, such as activation of an affordance on auser interface. When a respective predefined event or sub-event isdetected, event recognizer 180 activates an event handler 190 associatedwith the detection of the event or sub-event. Event handler 190optionally utilizes or calls data updater 176 or object updater 177 toupdate the application internal state 192. In some embodiments, eventhandler 190 accesses a respective GUI updater 178 to update what isdisplayed by the application. Similarly, it would be clear to a personhaving ordinary skill in the art how other processes can be implementedbased on the components depicted in FIGS. 1A-1B.

The foregoing description, for purpose of explanation, has beendescribed with reference to specific embodiments. However, theillustrative discussions above are not intended to be exhaustive or tolimit the invention to the precise forms disclosed. Many modificationsand variations are possible in view of the above teachings. Theembodiments were chosen and described in order to best explain theprinciples of the techniques and their practical applications. Othersskilled in the art are thereby enabled to best utilize the techniquesand various embodiments with various modifications as are suited to theparticular use contemplated.

Although the disclosure and examples have been fully described withreference to the accompanying drawings, it is to be noted that variouschanges and modifications will become apparent to those skilled in theart. Such changes and modifications are to be understood as beingincluded within the scope of the disclosure and examples as defined bythe claims.

As described above, one aspect of the present technology is thegathering and use of data available from various sources to improve thedelivery to users of invitational content or any other content that maybe of interest to them. The present disclosure contemplates that in someinstances, this gathered data may include personal information data thatuniquely identifies or can be used to contact or locate a specificperson. Such personal information data can include demographic data,location-based data, telephone numbers, email addresses, home addresses,or any other identifying information.

The present disclosure recognizes that the use of such personalinformation data, in the present technology, can be used to the benefitof users. For example, the personal information data can be used todeliver targeted content that is of greater interest to the user.Accordingly, use of such personal information data enables calculatedcontrol of the delivered content. Further, other uses for personalinformation data that benefit the user are also contemplated by thepresent disclosure.

The present disclosure further contemplates that the entitiesresponsible for the collection, analysis, disclosure, transfer, storage,or other use of such personal information data will comply withwell-established privacy policies and/or privacy practices. Inparticular, such entities should implement and consistently use privacypolicies and practices that are generally recognized as meeting orexceeding industry or governmental requirements for maintaining personalinformation data private and secure. For example, personal informationfrom users should be collected for legitimate and reasonable uses of theentity and not shared or sold outside of those legitimate uses. Further,such collection should occur only after receiving the informed consentof the users. Additionally, such entities would take any needed stepsfor safeguarding and securing access to such personal information dataand ensuring that others with access to the personal information dataadhere to their privacy policies and procedures. Further, such entitiescan subject themselves to evaluation by third parties to certify theiradherence to widely accepted privacy policies and practices.

Despite the foregoing, the present disclosure also contemplatesembodiments in which users selectively block the use of, or access to,personal information data. That is, the present disclosure contemplatesthat hardware and/or software elements can be provided to prevent orblock access to such personal information data. For example, in the caseof advertisement delivery services, the present technology can beconfigured to allow users to select to “opt in” or “opt out” ofparticipation in the collection of personal information data duringregistration for services. In another example, users can select not toprovide location information for targeted content delivery services. Inyet another example, users can select to not provide precise locationinformation, but permit the transfer of location zone information.

Therefore, although the present disclosure broadly covers use ofpersonal information data to implement one or more various disclosedembodiments, the present disclosure also contemplates that the variousembodiments can also be implemented without the need for accessing suchpersonal information data. That is, the various embodiments of thepresent technology are not rendered inoperable due to the lack of all ora portion of such personal information data. For example, content can beselected and delivered to users by inferring preferences based onnon-personal information data or a bare minimum amount of personalinformation, such as the content being requested by the deviceassociated with a user, other non-personal information available to thecontent delivery services, or publically available information.

What is claimed is:
 1. A non-transitory computer-readable storage mediumstoring one or more programs configured to be executed by one or moreprocessors of an electronic device with one or more cameras, one or moreinput devices and a display, the one or more programs includinginstructions for: while the device is prepared to capture media with theone or more cameras at a first magnification level, displaying, on thedisplay: a digital viewfinder based on data received from the one ormore cameras, wherein the digital viewfinder includes a representationof one or more objects within a field of view of the one or morecameras; while displaying the digital viewfinder, detecting, via the oneor more input devices, a first gesture; in accordance with adetermination that a first set of one or more conditions is met, whereina first condition of the first set of one or more conditions is met whenthe first gesture is at a first location, updating display of thedigital viewfinder to focus on a representation of a respective objectof the one or more objects in the field of view of the one or morecameras that corresponds to a location of the first gesture on the oneor more input devices without preparing to capture media with the one ormore cameras at a second magnification level different from the firstmagnification level; and in accordance with a determination that asecond set of one or more conditions is met, wherein a first conditionof the second set of one or more conditions is met when the firstgesture is at a second location different from the first location,preparing to capture media with the one or more cameras at the secondmagnification level different from the first magnification level.
 2. Thenon-transitory computer readable storage medium of claim 1, whereinpreparing to capture media with the one or more cameras at the secondmagnification level includes updating display of the digital viewfinderto show a preview at the second magnification level.
 3. Thenon-transitory computer readable storage medium of claim 1, whereindisplaying the digital viewfinder while the device is prepared tocapture media with the one or more cameras at the first magnificationlevel includes displaying, on the display, representations of the one ormore objects at the first magnification level.
 4. The non-transitorycomputer readable storage medium of claim 1, the one or more programsfurther including instructions for: in accordance with a determinationthat a third set of one or more conditions is met, wherein a firstcondition of the third set of one or more conditions is met when thefirst gesture is at a third location different from the first location,preparing to capture media with the one or more cameras at a thirdmagnification level that is based on a magnitude of the first gesture.5. The non-transitory computer readable storage medium of claim 1, theone or more programs further including instructions for: in accordancewith a determination that a fourth set of one or more conditions is met,wherein a first condition of the fourth set of one or more conditions ismet when the first gesture is at the first location, changing a cameracapture mode of the electronic device.
 6. The non-transitory computerreadable storage medium of claim 1, the one or more programs furtherincluding instructions for: in accordance with a determination that afifth set of one or more conditions is met, wherein a first condition ofthe fifth set of one or more conditions is met when the first gesture isat a fourth location different from the first location, the secondlocation, and the third location, changing a camera capture mode of theelectronic device to a mode corresponding to a location of the firstgesture.
 7. The non-transitory computer readable storage medium of claim1, the one or more programs further including instructions for: inaccordance with a determination that a sixth set of one or moreconditions is met, wherein a first condition of the sixth set of one ormore conditions is met when the first gesture is at the fourth location,changing a camera capture mode of the electronic device based on adirectional component of the first gesture.
 8. The non-transitorycomputer readable storage medium of claim 5, wherein the electronicdevice is configured to change among one or more of: a first cameracapture mode, wherein the electronic device is configurable, while inthe first camera capture mode, to prepare to capture media within afirst range of magnification levels, a second camera capture mode,wherein the electronic device is configurable, while in the secondcamera capture mode, to prepare to capture media within a second rangeof magnification levels, wherein the second range of magnificationlevels is within the first range of magnification levels, a third cameracapture mode, wherein the electronic device is configurable, while inthe third camera capture mode, to prepare to capture media within athird range of magnification levels, wherein the third range ofmagnification levels is within the second range of magnification levels,and a fourth camera capture mode, wherein the electronic device isconfigurable, while in the fourth camera capture mode, to prepare tocapture media at a first predetermined magnification level and at asecond predetermined magnification level, wherein the firstpredetermined magnification level and the second predeterminedmagnification level are within the second range of magnification levels.9. The non-transitory computer readable storage medium of claim 1,wherein a second condition of the first set of one or more conditions ismet when a zoom control is not displayed.
 10. The non-transitorycomputer readable storage medium of claim 1, the one or more programsfurther including instructions for: in accordance with a determinationthat a seventh set of one or more conditions is met, wherein a firstcondition of the seventh set of one or more conditions is met when thefirst gesture is at the second location, displaying, on the display, thezoom control.
 11. The non-transitory computer readable storage medium ofclaim 1, the one or more programs further including instructions for: inaccordance with a determination that an eight set of one or moreconditions is met, wherein a first condition of the eight set of one ormore conditions is met when the first gesture is at the first location,locking a focus or exposure setting based on a characteristic of arespective object of the one or more objects in the field of view of theone or more cameras that corresponds to a location of the first gestureon the one or more input devices.
 12. The non-transitory computerreadable storage medium of claim 1, the one or more programs furtherincluding instructions for: in accordance with a determination that aninth set of one or more conditions is met, wherein a first condition ofthe ninth set of one or more conditions is met when the first gesture isat a fifth location, and a second condition of the ninth set of one ormore conditions is met when a zoom dial is displayed on the display,preparing to capture media with the one or more cameras at a fifthmagnification level based on a magnitude of the first gesture.
 13. Thenon-transitory computer readable storage medium of claim 1, the one ormore programs further including instructions for: wherein the electronicdevice is prepared to capture media, using a first exposure, with theone or more cameras with a focus or exposure setting locked; and inaccordance with a determination that a tenth set of one or moreconditions is met, wherein a first condition of the tenth set of one ormore conditions is met when the first gesture is at the first location,preparing to capture media, using a second exposure, with the one ormore cameras, wherein the second exposure is based on a magnitude of thefirst input.
 14. The non-transitory computer readable storage medium ofclaim 1, wherein the first location, the second location, the thirdlocation, the fourth location, and the fifth location are independentfrom one another.
 15. A method, comprising: at an electronic device withone or more cameras, one or more input devices, and a display: while thedevice is prepared to capture media with the one or more cameras at afirst magnification level, displaying, on the display: a digitalviewfinder based on data received from the one or more cameras, whereinthe digital viewfinder includes a representation of one or more objectswithin a field of view of the one or more cameras; while displaying thedigital viewfinder, detecting, via the one or more input devices, afirst gesture; in accordance with a determination that a first set ofone or more conditions is met, wherein a first condition of the firstset of one or more conditions is met when the first gesture is at afirst location, updating display of the digital viewfinder to focus on arepresentation of a respective object of the one or more objects in thefield of view of the one or more cameras that corresponds to a locationof the first gesture on the one or more input devices without preparingto capture media with the one or more cameras at a second magnificationlevel different from the first magnification level; and in accordancewith a determination that a second set of one or more conditions is met,wherein a first condition of the second set of one or more conditions ismet when the first gesture is at a second location different from thefirst location, preparing to capture media with the one or more camerasat the second magnification level different from the first magnificationlevel.
 16. An electronic device, comprising: one more cameras; one ormore input devices; a display; one or more processors; and a memorystoring one or more programs configured to be executed by the one ormore processors, the one or more programs including instructions for:while the device is prepared to capture media with the one or morecameras at a first magnification level, displaying, on the display: adigital viewfinder based on data received from the one or more cameras,wherein the digital viewfinder includes a representation of one or moreobjects within a field of view of the one or more cameras; whiledisplaying the digital viewfinder, detecting, via the one or more inputdevices, a first gesture; in accordance with a determination that afirst set of one or more conditions is met, wherein a first condition ofthe first set of one or more conditions is met when the first gesture isat a first location, updating display of the digital viewfinder to focuson a representation of a respective object of the one or more objects inthe field of view of the one or more cameras that corresponds to alocation of the first gesture on the one or more input devices withoutpreparing to capture media with the one or more cameras at a secondmagnification level different from the first magnification level; and inaccordance with a determination that a second set of one or moreconditions is met, wherein a first condition of the second set of one ormore conditions is met when the first gesture is at a second locationdifferent from the first location, preparing to capture media with theone or more cameras at the second magnification level different from thefirst magnification level.